This is a great question. There are, at least, two points to be made. First, many companies do want to outsource, because often times foreign countries have a skilled workforce and they will work for less. These are two huge benefits and so many American companies are in India, Asia, and other parts of the world. The chief downside is the distance. As oil prices go up, transportation can be a problem.
What American companies are now realizing is that these countries are not only great for outsourcing but also for selling their products and services. In the last twenty years the rest of the world has gotten wealthier. They now have real purchasing power, which American companies want to tap into. Last year, Mercedes sold more in China than in the United States, for instance. Here is another example. Apple manufactures in China and now sells in China and China may surpass the United States in sales!
One of the ways companies can break into these markets is through outsourcing. Through outsourcing, they learn about the culture and gain valuable experience. In addition, they gain contacts to be able to do business well. In many parts of the world what is important is relationships.
Outsourcing, also known as offshoring, is attractive to U.S. and European companies because it is generally very cost-effective. There are websites that seek to connect U.S. companies with shops in China and India who have well-qualified workers who provide labor at a fraction of the cost of U.S. workers. It is also a way to create diversity in the workplace. Some popular sites that connect companies with skilled workers are: eLance, Brickwork, oDesk, and vWorker.