Pros
You feel great at the end of the day when you work for a global cause like the Red Cross. There is never a dull day (if you are doing your job right), and compared to many government or private sector institutions, you can make a difference quickly and get projects rolling without the usual red tape (don't get me wrong - there is still some).
Cons
The best and brightest employees tend to obtain high proft (i.e for profit / competitive jobs). My personal experience was that a lot of staff and big hearts, and even awesome ideas, but often lacked the skill, confidence and work ethic to get the job done. I was also slightly concerned about the overly social portion of the office - chatter doesn't always lead to results. You will be living on a smaller salary when working for a non-profit (which is understandable) - so make sure that you love your job and remind yourself of the great cause behind each project.