You are so full of shit. .NET is a cross-platform language platform. Microsoft already provides CLR on ARM, and subsets of it on PowerPC on Xbox 360, and will continue to do so. Let's count the architectures, shall we? x86, x64, IA-64, ARM, PPC.
C# and MSIL are both public standards, with independent implementations. It's not about control, it's about providing a better language and library platform than C/C++ and Win32. It's not perfect, but it's not the proprietary suck-hole you wish it was.