Don't forget eb5 except it's super slow. Probably takes 2 years from initial investment until you have your conditional greencard. Then another couple of years until you have a full fledged one.
I am not an immigration lawyer, but this is my understanding:
The H-1B is similar to the TN but each have their pros / cons:
TN is much cheaper (~$50 + lawyer fees) and there is no cap / application deadline. You apply at the border so there is also virtually no waiting time assuming you get it.
The downside of the TN is that it is a "temporary" permit. Technically it's not actually a visa. It simply allows you to work and live in the US for a "temporary" amount of time. The temporary part is very gray in this case, since it is up to the discretion of the border guard to determine if you are using it in a temporary sense. Similar to the H-1B it can last for up to 3 years, and can be renewed after that.
The other big difference is that dual-intent is not allowed on the TN permit. In other words, you are not supposed to apply for a green card while you are on it. The H-1B is dual intent and therefore that's what you want if you want to get a greencard.
A pretty typical path for Canadians who start working in the US and decide to stay is TN -> H-1B -> Green Card. However, it is not easier for Canadians to get an H-1B. They must participate in the lottery like everybody else.
> "In other words, you are not supposed to apply for a green card while you are on it."
You can actually do this, it's very painful but it's not rare. The gotcha is that the moment you leave the country your TN is kaput, so you're effectively trapped in the USA until the green card process is complete.
> The gotcha is that the moment you leave the country your TN is kaput, so you're effectively trapped in the USA until the green card process is complete.
Not quite true. Once you've filed for adjustment of status (which you can only do once your priority date is current), you can also file an I-131 for advanced parole, and after receiving this, you can leave and re-enter the US with it. Technically you're not on a TN anymore though.
It is a NON IMMIGRANT Guest Worker Visa good for 3 years.
It can be extended for an additional 6 years.
If they apply for a green card, it can be extended indefinitely on a yearly basis.