It's a hell of a lot easier to immigrate to Canada than the US. Try applying for a Skilled Worker Immigration, EA Observer. The US does not have an equivalent. The H1-B Visa is for those who already have a job offer. You do not need to be employed to apply as a Skilled Worker and receive Permanent Residence. I say this as a dual American/Canadian citizen that is married to an Italian man - so a foreigner to both countries. We've looked over immigration laws for both countries.
That said an American citizen would not lose American citizenship by naturalizing as a Canadian citizen, or as a citizen of another country. A few decades ago it was very easy to lose American citizenship, but with all the provisions, amendments, etc that have been made since it is virtually impossible to lose American citizenship without intentionally renouncing it. The rule of thumb is that you can keep your American citizenship as long as you did not intend to renounce it. When this "intention" comes into question, all the court cases I have read have erred in the citizen's favor (short of treason of course).
I plan to naturalize as an Italian citizen, so I've become pretty familiar with this subset of law.