Think this is spot-on, generally. The good, smaller charities tend to be a lot more efficient with their spending and expenses. Some of the big-name charities can be shamefully wasteful with their expenses. It might be a bit nerdy, but I look at a charity's accounts these days before donating, to make sure they're not doing silly things with their money.
I don't know what it's like in the US, but in the UK there are some decent resources for finding good, smaller charities.
Finally, Doctors Without Borders (in the UK we use the French name) got some stick above - I haven't looked recently, but traditionally they were one of the best big charities, and would go to help people in the danger spots - when people were saying 'they help the bad guys', I think the truth is that they help ordinary people who are suffering in countries with bad governments. Again, this may no longer be the case, but the Red Cross used to have a not so good reputation, in terms of spending, but also being a bit shy about going to the danger spots. But as I say, I'm not guaranteeing this is still the case (I hope it isn't).
Anyway delighted for everyone giving money to deserving causes!