¿Entonces Microsoft vende la misma muñeca con diferente vestido desde que sacaron w2000?
Desde 1988 se viene trabajando en Windows NT y seria una absoluta locura tirar por la borda años de buen desarrollo y ademas seria impracticable desarrollar una nueva version desde cero todas las veces. Eso no sucede en ningun Sistema Operativo, ni en Linux ni en ningun otro. Sino se sacarian como mucho dos versiones por decada.
En cada version hay cambios, incluso en cada service pack hay cambios. Otra cosa es que sean visibles para los usuarios o incluso para los programadores.
Microsoft decidio implementar el GUI en modo usuario (NT 3.51) al principio y posteriormente en modo kernel (4.0 en adelante), ningun usuario en el mundo se entero y muy pocos programadores lo saben.
Los cambios del Kernel solo suelen ser vistos por los programadores de drivers, los cambios en la API tambien llegan a los programadores de modo usuario pero los usuarios nunca se percatan de ellos, lo unico que pueden ver a ciencia cierta es el aspecto grafico y en menor medida la velocidad o estabilidad.
Por lo tan poco que estuve viendo el loader ya funcionaba de manera diferente, en las versiones anteriores cuando se carga un proceso en forma suspendida solo se mapean en memoria NTDLL.dll y la imagen en cuestion (el .exe) y hasta que no se resume el proceso (el hilo principal en realidad) no se acciona el loader y no se cargan las librerias enlazadas estaticamente mientras que en Vista si se cargan las librerias, aparentemente el loader comienza su trabajo antes de que el hilo principal arranque.
Y en cuantos a las capas nuevas yo creo que la AMPLIA mayoria de programadores estan de acuerdo en tener a .NET para que les haga casi todo el trabajo, no sera un cambio visible para los usuarios pero si para los programadores. Yo diria que el cambio mas acentuado desde la aparicion de la Win32 API ya que esta sera gradualmente enofocada a .NET (WinFx).