This is a subjective question.
I worked in Visual Basic 6.0 before coming into the .NET space.
One thing I see that there are a lot of things, for which there is a need to deal with the Win32 API. As a Visual Basic 6.0 developer, there were a lot of limitations. .NET fixes some of the old problems however the need to rely on Win32 has not been taken care of.
Will there be anytime that there wouldn't be the need to rely on Win32? (I guess only when .NET has support at OS level.)
I understand that domain of .NET (writing LOB applications/websites) and C/C++ is different so far.
Can .NET or any other infrastructure really make C/C++ less significant? Am I expecting too much?
EDIT: Doesn't it look like, building wrapper over another wrapper (and bring in new set of complexities along-with it)?