First, technically speaking, .NET is a great software development platform. It's worthwhile study and use it, especially when developing software on windows platform now and in the near future.
.NET is just a marketing claim from Microsoft, the specification is officially called CLI(Common Language Infrastructure), it's ratified as standard by ISO this month, before that, it's ratified as ECMA standard last year.
.NET framework and SDK is just an implementation of CLI from Microsoft, it's free to use. Other vendors may provide a different implementation on windows or different OS platforms, e.g. the well-known project MONO - the open source implementation on Linux. Actually, there is a shared-source implementation from Microsoft named Rotor; you could have an inside look. The Rotor implementation can run on Windows XP, FreeBSD and Mac OS X. CLI has lots of similarities with Java technology with more strong points since it's a new-comer, but may not as mature as J2EE and this is going to be changed for sure.
.NET and J2EE will be two cooperating server technologies in the foreseen future.
Open-source is going to change software development greatly. In fact, software is more like service other than product, the ownership of software is going to be replaced by service from software. The open-source is one of the ways that promote this concept. Gates is worrying about this because it affects the current business model of Microsoft, the giant cash cow, however, who can say Microsoft won't change in the future from inside or outside push?
Linux is gaining and will gain more and more shares, but one cannot predict how long it will take for Linux to have a significant share. Moreover, the Linux gain most likely comes from the shares of all kinds of UNIX, won't affect Windows too much. Actually Windows will increase its share on the server end. Finally the TCO (Total Cost of Ownership) of Linux system is much higher than the TCO of Windows system.
In sum, free OS doesn't mean cheaper system. OS-independent is not a unique advantage any more.
-------------------------------------------------------
Please have a close look of the performance of SUN. And Java programming language and J2EE specification are owned by SUN, don't know they are ECMA/ISO standards or not.
-------------------------------------------------------
The current IT spending level will slow down OS platform upgrading, as Rock2008sz pointed out.
This will affect all aspects of IT as a whole.