Build configuration in Visual C++ offers a great deal of control over what is being built and how. Some of the greatest things, just to name a few, include separate configurations for 32-bit and 64-bit platforms, property sheets allowing dozens of configurations to be updated in one place, the UI that allows one to select multiple projects by holding down the Ctrl key and set common properties for a bunch of projects, separate solution and project configurations, etc, etc, etc.
One would think that having such elaborate build system, C# would actually build on it and make it even better. After all, it's a new language designed without the backward compatibility baggage. In reality, though, it is no so much so. It's as if the Visual Basic team was reoriented and designed the C# build system.