Microsoft doesn't need to compete with Macromedia Flash. That idea is laughable. Maybe for small hobby programmers Flash is decent, but let's see you create a business enterprise which depends on Macromedia Flash.
.NET can be installed on anything >= Windows 2000, not just Windows XP, and Microsoft specifically designed .NET to be potentially cross platform.
The framework is not cumbersome for anything except downloading, and as new versions of Windows become more widespread (Windows 98 has already been obselete for a long time, we can't keep supporting it) it will become less so.
Microsoft haven't deprived millions of VB programmers. VB6 will be supported until something like 2008, and people are free to program in it if they want. It's not like they just made it stop working.
Bottom line: if you don't want to use .NET, don't use it, but I think the pros outweigh the cons when it comes to alternatives.