Я бы не сказал, что дотнет это bloatware.Изначально Microsoft делал свою реализацию Java, включив её в Win98 и NT. При этом, они делали свою Java так, чтобы программы от сторонних разработчиков зачастую не работали в других реализациях Java (в частности, от Sun). А так как Windows установлена на 99% домашних компов и офисных рабочих станций, всё шло к тому, что официальной "явой" никто не будет пользоваться, придя к массовому мнению, что "на ней ничего не работает".
Это называется EEE (но не ноут от ASUS, а другое).
Sun увидела, к чему это идёт, и запретила Майкрософту делать такое по суду. Те обиделись и сказали "мы сделаем свою Яву!". Только не в плане очередной реализации Java, а совершенно другой язык, вдохновлённый Явой.
И сделали. Получился реально кроссплатформенный .NET, когда для 32- и 64-битных систем подходит один бинарник. По-идее, этот же бинарник подходит и для других ОС... если бы там был .NET
И Мигель Де Икаса стал делать .NET на другие ОС, назвав его Mono. Это реально работало. А если кому-то хочется назвать его предателем, просто вспомните, что в составе GCC в то же самое время разрабатывали компилятор Java-кода GCJ - это что же получается, GCC тоже предатели? Учитывая, что на тот момент Java была проприетарной, а разработчики проекта GCC пытались сделать её более открытой.
Странно, что .NET не был опенсорсным изначально. Учитывая, как проги под него стали запускаться на других платформах с минимальными усилиями благодаря Мигелю и его команде.
Но стоит вспомнить, что и Java тоже была с закрытым кодом до 2008 года.
А Майкрософт тогда с опенсорсом враждовала. Потом сменилось руководство, отношение к линуксу изменилось, и .NET открыли, как в своё время открыли Java.