The company I work for has several clients. I'm currently splitting my time between 2 .net projects. For Client A I need Visual Studio 2008, SQL Server 2008 and the 3.5 framework. For Client B 2005 versions/2.0 Framework.
Others in the company are using Microsoft Virtual PC to keep the development environments separate.
What do you suggest?
Additional Info: The main benefit I see is that you are able to share your virtual machine setup with anyone. This allows a new developer to step right in on a project without spending half a day setting up the new development environment and all its idiosyncrasies.