Pros
MSFT is an awesome big company--great benefits, great work-life balance, great job security. It's a great place to work on world-leading software franchises and have an opportunity to have a scope of impact that most start-ups only can dream about. The people there are pretty smart too. Also since they've implemented a lot more touchy-feely things in the performance management system, people are much nicer and more human. All in all a great overall work environment for a huge company.
Cons
Although it's a great place to work for a big company, it is a big company. Too many people making too few decisions. Far too many people I know spend their time working and reworking and reworking powerpoint slides that can be reviewed, chewed on and re-edited again to show to someone else. This lack of single point of accountability was really bad. Also, with so many people career advancement is getting to be pretty difficult. It's getting very tenure based, like a Proctor and Gamble. This is a bummer. Finally, I think that too few people really have the technical and customer passion that's needed there. Few people are really up to speed on the latest products coming out from competitors or how our customers interact with them. This is a bad habit and too many people have gotten lazy.