Technically E3 has a cap, but since only Australians can apply for it (as opposed to the whole world applying for H1-Bs) the cap has never been reached.
Drawback is: non-permanent visa (so banks won't lend to you) & you can't have intent to stay (can't apply for greencard).
H-1B is dual-intent (i.e. not non-permanent) & better known to banks (3k vs. 120k granted per year).