.NET is overall a very good platform. M$ have taken a lot of ideas from other languages (e.g. Java, Perl and PHP) but overall .NET allows programmers to code in the coding style that they like (C++, C#, VB, Pascal), without having to learn everything from scratch. In each and every language interpreter that sits on top of .NET, the majority of the underlying objects that the framework provides is exactly the same - hence, the programmer can choose the language he/she feels more comforable with, learn how to do tasks and port the ideas over to other languages. Everything is object-oriented, not like the hellish and cumbersome MFC classes (like Java, as M$ took a lot of ideas from it). Plus, VB.NET is a true and organized object-oriented language, unlike the sloppy piece of crap that VB6 (and earlier versions) is
Moreover, it's not slow, in fact all the .NET applications I've seen are lightning fast (with the notable exception of ATI Control Panel). As for portability, theCaller has explained it very well.
I'm not a Microsoft lover (that's why I always call them M$

), but I do like .NET and the flexibility and power it gives to programmers.
Unfortunately, nowadays companies and people want good results and they want them now. It's not feasible to reinvent the wheel for every single project and languages like Java and the .NET platform do have a lot of classes for many different things
Plus, saying that Java and PHP are oriented for "smaller projects" is not true either... I've also seen many many many large projects coded in those languages, as they are both flexible, powerful and above all, free. CIL projects (e.g. Mono) as well as the .NET SDK are free too (like Sun's)
I've programmed in many languages and I've seen many things. I can't say if ".NET is the future" like Gates supports, however it's a very powerful and organized platform. I honestly don't understand why there are people who "want it to die", especially without reasoning, other than the fact that it's an M$ product. It's a programming platform, supporting many languages, it works and many many people use it
As for the other suggestions, I too believe that IA64 is dead - nobody was ever interested in it, mostly because of the Itanium prices and the very small number of Itanium processors on the market nowadays. x64 is great, mostly because Athlons can run quite happily both 32-bit and 64-bit applications with very good performance. I don't believe that programmers will use the extras that a 64-bit platform offers any time soon, but mostly recompile current 32-bit programs as 64-bit (apart from drivers - those will need many changes, unfortunately)
I know that my post seems to be ramblings of an "M$ fanboy". However I've read many negative opinions about .NET without reasonable explanations in this thread