Imagine for a moment that Microsoft hadn't forced us all to use .NET and instead VB 7 had been just an evolutionary upgrade. Presumably we would have settled on VB 7 for the "easy" applications and C++ for the more "demanding" applications. We would probably have seen the same sorts of Windows APIs developed, although without the wasted effort building managed wrappers to pretend that .NET was a first class citizen. Who knows perhaps C++ would have gained a better UI frame work possibly based on a markup language all the sooner.
I ask you - what has the excursion into managed code brought the Microsoft programmer and indeed what good has it done for Microsoft?