Having the ability to do more system programming on .NET (without having to P/Invoke all over the place) would (should?) make a lot of it significantly easier and faster. Also, the security issue is not to be overlooked -- with managed drivers and lower-level libraries, there'd be a much lower chance of fatal security bugs (e.g. buffer overflows). Also, writing this code in .NET allows developers to take advantage of a great number of new testing tools like Pex and Code Contracts (for fuzzing and static analysis, respectively).
Also, .NET 4.0 includes some additions for doing parallel processing to help developers take advantage of multi-core processors. I've been playing around with it for about a month now (I'm writing an open-source managed numerics library in C#) and the new parallel stuff is really quite good.
I would love to see .NET better integrated into the actual operating system. I agree completely with you.
Also, it's worthwhile to mention that .NET is available and usable freely (albeit limited features in VS, but not THAT limited), and let's not forget that start ups can get full access to plenty of the software through http://www.microsoftstartupzone.com/BizSpark/Pages/FAQ.aspx
I like the direction Microsoft is taking the company, I hope it continues.
Also, .NET 4.0 includes some additions for doing parallel processing to help developers take advantage of multi-core processors. I've been playing around with it for about a month now (I'm writing an open-source managed numerics library in C#) and the new parallel stuff is really quite good.