Kao i kod svih API-ja, .NET je vertikalno kompatibilan na gore:
Program pisan u 1.1 će raditi i na 2.0 i na 3.0; obratno naravno ne važi.
Citat:
I cemu zapravo NET uopce kada nije cross platform za razliku od Jave.

Unifikacija Windows platforme (pišeš na bilo kom .Net jeziku, izvršava se na svakom računaru koji ima .Net Framework) uz maksimalno iskorišćenje onoga što sama platforma - Windows - pruža: uporedi bilo koju desktop aplikaciju na .Net-u i na Javi - koja lepše izgleda?
Nije cross platform zato što MS nije hteo da ide tim putem, mada postoje dve-tri implementacije .NET-a na Linuxu - .Net je otvoren standard (pogledaj recimo Mono:
http://www.mono-project.com/Main_Page )