Outsourcing is controversial because it is sends jobs and money from the home country to the outsource country. There are specific business reasons why companies choose to outsource despite the controversy.
Because the cost of labor, electricity and real estate in some countries is far less than in their home countries, companies can save money by locating their manufacturing facilities in those low-cost countries.
Some companies specialize in manufacturing products for other companies, particularly components. For example, Sony manufactures televisions with thousands of parts. They might outsource the manufacturing of some of those parts, like LED diodes, to a smaller company that only makes diodes.
It may be cheaper to ship products that the company sells in the overseas market from a country that's nearby. For instance, it may be cheaper to manufacturer products in Thailand in order to sell them in Japan than to manufacturer in the U.S. and ship across the Pacific.
Some companies are experts at manufacturing; others are experts at marketing branding, research or retailing. Wal-Mart, as a retailer, outsources the manufacturing of all of its products to the companies that make them.
There may be specific areas in the world that hold a specialized expertise, such as Italian leather workers or Afghani embroiderers. Companies outsource manufacturing of those goods to artisans or companies in the area.