I wrote directly to a recruiter, he replied back the same day and he organized a phone interview in 3 days. Phone interview took 45 minutes and consisted of simple questions about C++, multi-threaded development, algorithms and a coding task. I got result the same day that MS is ready for on-site interview with me.
On-site interview consisted for 5 interviews, 4 technical and 1 with HR. All interviews took 45 minutes and consisted about general questions and doing some code (first 3) or design (last 1) tasks.
If you really want a job at Microsoft, I would recommend you to do some interviews in other companies first, the interview is not hard but you should be prepared. Also I really recommend to sleep well before the interview and to make sure you can talk in details about your prior experience written in CV even if it is about your major in University and a job you had 10 years ago.