How long does it take to get a US Green Card? Well, it depends. It will take at least 2 years these days. That's two years that a spouse is sitting at home, doing nothing, because she or he are unable to work. That's a stupid waste of resources because that person could contribute to the economy and tax base instead of just "burning time" until the green cards arrive.
In the Bay Area, if you're from India, it can take up to 7 years. My friends and I, from Mexico, got it in an average of 2.5 years (mine took just a smidge less than 18 months, back in 1991-1993).
I worked for a major Internet company last year; a large number of people from France, Israel, India, etc. await their green cards; their average time is about 5 years.
All of us have advanced degrees or are highly specialized in some in-demand technology area (or both); outside of this one-year employment gap (golden handcuffs), I spend about 50% of my time now advising for other companies in Europe and Asia, the other 50% advising US companies. The common denominator I see across all countries where I work is that qualified people who know their stuff are very hard to find and to hire if you're looking for a business and technology advantage. In the last three years I got the equivalent to Russian green card (high technology worker), and have provided services to the Ministry of Economy, Technology, and Industry in Japan, among several other gits. I see the same demand for talent all over the world, not only here in the US.
This isn't a situation unique to the US. I just got back from scouting business in China and (surprise!) I found that start ups and established companies alike are willing to find and hire whoever they can that will give them the tech and business advantage that they need, from whatever country they come from.
Thinking that H1B visas are only filled to keep wages down is naïve. While there are many instances of companies like InfoSys and Wipro abusing the system, most tech companies are trying whatever they can to hire the top talent they can find and will use H1B, E, L, or O visas to make it happen (at least in the Bay Area). There's a real need for people who are qualified in cutting edge science and technology fields. And many of those people have life partners, who could also be productive members of society. Why hinder the spouses ability to contribute, if they are qualified?