1.) Ich meinte mit der Linux-Implementierung von dotnet Mono und DotGNU. Windows wird vermutlich das dotnet-Framework als Closed Source veröffentlichen (eventuell sogar mit NGCSB*-Funktionalität); sämtliche Open Source-Implementierungen werden nach Möglichkeit niedergeknüppelt.
Tatsächlich war MS mit den Unterbindungsversuchen bisher nicht erfolgreich. Das heißt aber nicht, daß sie es nicht weiter versuchen. Zum Beispiel mit Softwarepatenten.

2.) Bei C# gibt es also keine Includes mehr, das macht es dem Compiler/der IDE einfacher, den Code zu verstehen. Für den User bedeutet das vermutlich lustige Cut-and-Paste-Orgien. Okay...

* ehemals Palladium