We are currently involved in going "live" with our first beta. This is a mid-sized .NET application using all the .NET pieces - winforms, webforms, webservices, ...
Of course, while we are trying to get a CD to send to our data center we are still finding bugs and patching. The configuration managment process is very interesting to me.
How to patch by rebuilding only what's necessary and copying the dlls where they need to go is a manual process right now - and mistake prone. This process will be automated.
I have a working build process that uses an xml config file containing a list of projects, in no particular order. The process gets those projects from VSS and builds them in build order. I use makefiles and nmake.exe to compile.
Nant http://nant.sourceforge.net would have been a better solution, perhaps, but I'm not going to change now.
Other solutions might be:
Build It: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/tdlg_app.asp
or Build: http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=2cb20e79-d706-4706-9ea0-26188257ee7d
Currently the build process is very stable and since I'm not that interested in "improving" it the process will left alone. The initial deploy/installation process is also stable.
The patch process is another story...