If MS resisted the temptation to play proprietary with .NET
that's a big if
It appears to me that .NET is trying to compete primarily with the server side. Unless you're running Windows Server 2003, your server will never truly be able to fully & completely interact with say, AD, MSSQL, COM+ and other services that incidentally are quite mature, very well designed and platform independent. MS is wholly dependent on you and your organisation buying the very latest, so connecting to legacy mainframes etc. will not be possible. That's a guarantee.
.NET has nothing to do with the IDE, nor did the OP say anything about it. So if anyone is lacking a clue, that'd be you.
Try developing a .NET application without the IDE. I said that because that's the first thing that the .NET fanbois mention. "The IDE makes me so productive! It's so intuitive! It looks so good! I can deploy a poorly thought out web service in 10 minutes!"
Your sidenote is interesting, because if you're looking for total lock-in, it definitely is the way to go. Apparently the security patches will cost as well, sooner or later. Whatever. Your final paragraph doesn't really have any substance. J2EE runs fine on windows, whereas .NET only runs on windows. I've yet to see vaporware "kill" anything.