Pros
I think Microsoft is a great employer and has a great culture and great values. Most of the engineers working here are very passionate and dedicated so the learning and collaboration opportunities are amazing. The work-life balance is good and there are great perks and benefits for employees. The hires are very diverse and coming from very different backgrounds, which is great as it strongly contributes to both the personal and professional growth of the individuals and the success of the products. As it is such an international company and the majority of the employees are Expats, it is very easy to adapt in the environment and feel respected and included at the workplace.
Cons
Some products are very old and have been written in programming languages that are not used in any other companies or for any other products, so it might feel like if you spend too much time there, it would be hard to find another job - both because of the lack of practice of other coding languages, but mostly because everything is advancing very fast, new technologies emerge and you are not actively learning or practicing those.