Question: What does the Visual Studio development team at Microsoft use to develop new versions of Visual Studio? Do they use VS2005 to develop VS2008? Thinking about it makes my head hurt a little...

Answer: 
One of the PDC videos I recently watched said they use VS2010 to develop VS2010.

You may imagine how quickly bugs get fixed that way.
C was implemented to write UNIX. UNIX is written in C. On UNIX, currently. At some point, you use what you've built to keep building it.

I'd imagine the very first go of VS2008 is written in VS2005, but then they start using VS2008 as soon as is feasible to continue developing VS2008.