Ease of use. And easy interoperability with the rest of the .NET framework (the non-Win32-related parts).
There's nothing magical about .NET, it's just a huge number of predefined classes for doing common tasks easily. And many of those tasks are stuff like "create a window" or other Win32 functionality.
As for Win32 being "straightforward and robust", I don't think so.
Here's a wonderful example: One of the most fundamental pieces of functionality a programmer is going to need: That of retrieving the error message associated with the error that just occurred:
http://msdn.microsoft.com/en-us/library/ms679351%28VS.85%29.aspx
- 7 parameters
- Two tables to read to understand the parameters
- Security remarks to take into account
- Special, specific functions (LocalFree) that must be called to release the system-allocated buffer.
Just to achieve this simple piece of functionality? And this is "straightforward"?
The Win32 API is one of the worst-designed, most convoluted and hard-to-use (correctly, at least) API's in existence. The only thing it manages to do consistently is to make the easy, intuitive usage wrong, and require a lot of footwork to achieve correctness.
But of course, anyone who's spent a decade working with the API has already faced these issues and are used to them. For you it may be no problem. And even better, since you already have your application, you might as well stick with it. There's no reason to throw it out and start over in .NET
But if you were starting a project from scratch today, then
- The learning curve would be a lot friendlier in .NET (but again, if you're already past the learning curve, that's less important)
- The scope for error would be reduced in .NET (it's much harder to call functions in the "wrong" way, and even if you do, fewer bad things can happen)
- It'd be easier to find new programmers to join your team
- Most people are far more productive in a language like C# than C or C++. One of the major things .NET offers is the ability to use .NET languages. Compared to that, the class library could be considered the icing on the cake.