Take something as seemingly straightforward as food aid. "At some point," Mr. Shikwati [, a Kenyan economist,] explains, "this corn ends up in the harbor of Mombasa. A portion of the corn often goes directly into the hands of unscrupulous politicians who then pass it on to their own tribe to boost their next election campaign. Another portion of the shipment ends up on the black market where the corn is dumped at extremely low prices. Local farmers may as well put down their hoes right away; no one can compete with the U.N.'s World Food Program."
Foreign Aid more often than not destroys the local production capacity of the items being provided as aid, and thus creates dependency instead. And to make matters worse, it always props up corrupt local politicians who use their power in the aided country to direct aid for political reasons, or make money off the aid using various schemes, such as buying and running the trucking companies that actually deliver the aid.
American foreign aid, apart from emergency aid like in Haiti right now, in my opinion, should be carefully limited to forms that promote local good governance and increased production capacity in the aided country. Otherwise, it does more harm than good.
The reasons that poor countries are poor is directly due to their economic and government systems. There are numerous examples of countries quickly rising out from the third to first world in a matter of a decade or two with free markets and protecting property rights. The ones that stay mired in poverty are almost all characterized by corrupt governments and dysfunctional economic systems. Foreign investment is almost non-existent in these countries.
Those core reasons for why a country remains poor are by-in-large harmed by long-term foreign aid.