My biggest gripe with Visual Studio (especially ASP.Net apps) is that you need to maintain multiple copies of your configuration files for each environment you build your app for (typically this is dev, qa and prod). This is especially true for ASP.Net apps as they depend on databases and you typically have different databases for each environment. The biggest problem with maintaining different versions of web.config is that you have to remember to keep some of the settings in sync and the rest need to be left different. In addition, you need to remember to copy the correct web.config file to the correct environment and in addition remember to rename the files. TOO MUCH WORK!
This is going to change in VS 2010 with a feature called Web.Config transformations. I have not tried it out yet. But this post: web.config transformations on the WebDevTools blog explains it step by step and I am excited to use it when VS 2010 releases. It will definitely make life easier to deploy my ASP.Net apps.