We’ve upgraded our Silverlight solution to 4.0 so we are now using Visual Studio 2010. Unfortunately we have not had the time to upgrade to TFS 2010 yet, so we are still running TeamBuild 2008. So that means that under the covers, Team Build is still trying to use MSBuild 2008. In order to change that, you have to go into your build server, stop the service and then find the config file for TfsBuildService.exe (C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\TfsBuildService.exe.config). In that file, there is a setting called MSBuildPath, which was empty, meaning that it would go to the default path for 2008. So i changed that key to:
Now, this means that even your 2008 solutions will go through that version of MSBuild, which should be ok since you can build previous versions of .NET apps with the latest MSBuild. But just in case, we left all our 3.5 apps building on one Build Server, and the 4.0 apps building on this Build Server.