My journey to Green Card took 8 years, because I first came to the US in the J-1 status (exchange visitor) as a medical resident. I could not have gone to Canada, because it was not and it is not accepting foreign medical residents, so Canada was not an option for me. I stayed in the J-1 status for 3.5 years until I graduated from my residency program. I applied for H-1 at that time. By the way, my wife was able to work in the J-2 status, so she was not a home stay wife. Anyway, I stayed in the H-1 status for 3 years to complete the required 3 years of the medically underserved area service that is a must if I didn't want to move back to my home country (it's the current law for J-1 holders) and then I worked on PERM (~10 months) to be able to apply for the adjustment of status that took 110 days to complete. So, adding all of the above makes ~ 8 years. I'm not sure who you are and where you are and what your goal is, therefore, I don't know what to say. If I had a chance to choose between the US and Canada, I'd choose the US from all the standpoints, but it's my opinion. Nevertheless, after having lived in the US for 9 years, I feel no more happy than I was in Moldova. It's just a different struggle. In fact, I've returned back to Moldova every single year (except for one when my daughter was born) and I am looking forward to 2012 when I hopefully get my sabbatical and, Lord willing, move back to Moldova for more than just 2 months of my regular annual vacation.