Visual Studio 2005 does not seem to be very helpful in this respect, though the MSBuild process does offer some solutions. The most flexible way I've found to manage this is by conditionally changing the value of the $(AppConfig) property in the BeforeBuild target (in the projects .csproj/.vbproj file), depending on the value of the $(Configuration) parameter. For example:
<Target Name="BeforeBuild">
<CreateProperty Value="My.app.config"
Condition=" '$(Configuration)' == 'MyConfig' ">
<Output TaskParameter="Value" PropertyName="AppConfig" />
</CreateProperty>
</Target>
