Fundamentally I agree with this, it's very inefficient and wasteful of resources, although I sometimes wonder whether it's the only practical way to provide welfare in places where politics / prevalent ideology oppose direct social policies.
It can also be argued that charities providing all those third world country with basic supplies, like food, clothes or drugs, actually ruin their economies. It's simply impossible for local producers of said goods to compete on price with charity organization that gives those away for free.
If a corporation would try to do that in US, it would be called price dumping and trigger antimonopoly lawsuit against them, but somehow, when it's done to poor African countries we consider it OK, and even expect them to be gratefull for it.
EDIT: I think that China does much better job helping them by making actual investments in their economies, building railroads, factories, etc. You might question their intentions, but you cannot question the results.