While walking in the Tenderloin section of San Francisco to meet my friend for coffee after work, a few of us got to discussing giving money to the people who ask for it along Market St (if you're in SF, or on Boylston St, in Boston or any street that happens to have lots of people of mixed incomes traveling along it daily). Another friend of mine has a self-enforced rule that he gives some money to every seventh person who asks - he feels that this is the most objective way he can give money because it removes his own judgment of who the person is and what they'll do with the money.
But then our discussion extended to donating money to charities - ranging from buying a magazine from your neighbor's kid to fund after school programs to donating to The Global Fund yearly. One friend said the he simply felt that at this point, his money was more valuable in his own hands (in the form of paying for graduate school, stocks, etc) than it could be to a charity. He used Bill Gates as the ultimate example of how great wealth can have a shot at curing malaria in a way "a thousand small grassroots organizations never could".
I personally hold a lot of admiration for grassroots organizations as one of the few things that can break through a pretty difficult system to help peoples lives - and my experiences working with and for a variety of grassroots groups has more than confirmed this. But it's does appear that for the most part small organizations seem hold the seams together - helping people survive, and perhaps slightly improve, the right now - but that it does take a lot of money and a lot of organization to make big changes. We all need to find out which way is more conducive to our individual lifestyles (as they are or perhaps as we want them to be) - because the world needs both.
My current thinking is this: first pick your cause(s), then think about what you'd enjoy (and feel fulfilled) doing on a daily basis that is somehow working towards it/them. And check yourself every once in a while to make sure you haven't deviated from that too much.