I've had two interviews with Microsoft, the second of which ended in a job offer.
Step one was getting a phone interview - for me it happened when I heard through contacts that Microsoft was doing a recruitment drive in my "neighborhood". I got the right contact and put up my resumé, and they set up a phone interview with me.
The phone interview was mostly relatively technical questions that were definitely possible to answer over the phone in a reasonable time frame.
They then invited me to an in-person interviewing event, expenses paid to get there. At this event I was interviewed by several people. Three or four if I recall correctly. Some questions were high-level technical, some were very deeply technical, some were trivia questions, and several were basically "impossible" questions designed to demonstrate your thinking process and analyzing skills in real-time.
I think what clinched the offer the second time was that I was confident (I had done it before and didn't desperately need the job either), and really connected with some of the questions and interviewers.
All in all it was a very nice experience, I learned a lot about interviewing and real-world development, and even though I ended up declining the offer I would recommend doing this process to anyone even somewhat interested in this direction.