There are at least four stakeholders in this situation:
1. The American company that wants to save money
2. The Middleman (e.g. Wipro etc) that wants to make money on the wage arbitrage
3. The foreign worker on the H1B
4. The American citizen that doesn't want to be replaced by the foreign worker
I'm all for cutting out (2) and making it easier for the foreign worker (provided they have the skills) to become an American and not beholden to (2). However, I don't like the American companies saving money on the backs of American employees losing their jobs. How to balance everything is the tough question.