Compatibilidade retroativa é um termo ruim para usar. .NET 1.0, 1.1 e 2.0 são seus próprios frameworks que não têm compatibilidade entre si. O .NET 3.0 e 3.5 são conjuntos super do framework 2.0, usando o framework base do .NET 2.0, com DLLs adicionais para fornecer recursos adicionais (3.0 incluíam coisas como WCF e WWF, 3.5 tinham coisas como LINQ). Em termos de requisitos de aplicativos:
- 1.0 aplicativos exigem que o .NET 1.0 seja instalado.
- 1.1 aplicativos requerem que o .NET 1.1 seja instalado. Os aplicativos
- 2.0 exigem que o .NET 2.0, 3.0 ou 3.5 esteja instalado. Os aplicativos
- 3.0 exigem que o .NET 3.0 ou o 3.5 sejam instalados.
- 3.5 aplicativos exigem que o .NET 3.5 seja instalado.
Tenho quase certeza de que o .NET 4.0 segue o mesmo modelo do 2.0 - 3.5 (2.0 base com dlls de recursos adicionais). Portanto, instalar o .NET 3.5 cobrirá você para aplicativos .NET 2.0 - 3.5. Você precisará instalar o .NET 1.1 se você executar qualquer aplicativo 1.1 (mesmo para aplicativos 1.0).