There's no .**** on my XP machine and it runs just fine.
.net is a runtime environment which supports software written by programmers who generally have no idea how to program.
I interviewed a guy last week who was, to be fair, a pretty accomplished .net programmer. I asked him to explain the concept of buffer and stack overflows on the whiteboard. He didn't have the faintest idea what I was talking about. Not the kind of people whose software I want on my PC.