Versioni e dipendenze di .NET Framework
Tutte le versioni di .NET Framework contengono Common Language Runtime (CLR), librerie di classi di base e altre librerie gestite. Questo articolo descrive le funzionalità principali di .NET Framework in base alla versione, fornisce informazioni sulle versioni CLR sottostanti e sugli ambienti di sviluppo associati, e identifica le versioni installate dal sistema operativo Windows.
Ogni nuova versione di .NET Framework aggiunge nuove funzionale ma conserva funzionalità dalle versioni precedenti.
Nota
.NET Framework viene gestito indipendentemente dagli aggiornamenti di Windows con correzioni di bug associati alla sicurezza e all'affidabilità. In generale, gli aggiornamenti della sicurezza vengono rilasciati ogni trimestre. .NET Framework continuerà a essere incluso in Windows e non è prevista una sua rimozione. Non è necessario eseguire la migrazione delle app .NET Framework, ma per il nuovo sviluppo usare .NET 8 o versioni successive.
CLR viene identificato dal relativo numero di versione. Il numero di versione di .NET Framework viene incrementato a ogni rilascio, ma la versione CLR non viene sempre incrementata. Ad esempio .NET Framework 4, 4.5 e versioni più recenti includono CLR 4, ma .NET Framework 2.0, 3.0 e 3.5 includono CLR 2.0. (non c'è nessuna versione 3 di CLR).
Suggerimento
- Per un elenco completo dei sistemi operativi supportati, vedere Requisiti di sistema.
- Per i download, vedere Installare .NET Framework per sviluppatori.
- Per informazioni sulla determinazione delle versioni di .NET Framework installate in un computer, vedere Come determinare le versioni di .NET Framework installate.
Informazioni sulla versione
Le tabelle seguenti contengono un riassunto della cronologia delle versioni di .NET Framework, correlando ciascuna di esse con Visual Studio, Windows e Windows Server. In Visual Studio viene fornita la funzionalità di multitargeting, pertanto l'utente non è limitato alla versione di .NET Framework elencata.
- L'icona ✔️ del segno di spunta indica le versioni del sistema operativo in cui .NET Framework è installato per impostazione predefinita.
- L'icona ➕ del segno più indica le versioni del sistema operativo in cui .NET Framework non è installato, ma può essere installato.
- L'asterisco * indica le versioni del sistema operativo in cui .NET Framework (preinstallato o meno) deve essere abilitato nel Pannello di controllo o, per Windows Server, tramite Server Manager.
Passare a:
- .NET Framework 4.8.1
- .NET Framework 4.8
- .NET Framework 4.7.2
- .NET Framework 4.7.1
- .NET Framework 4.7
- .NET Framework 4.6.2
- .NET Framework 4.6.1
- .NET Framework 4.6
- .NET Framework 4.5.2
- .NET Framework 4.5.1
- .NET Framework 4.5
- .NET Framework 4
- .NET Framework 3.5
- .NET Framework 3.0
- .NET Framework 2.0
- .NET Framework 1.1
- .NET Framework 1.0
.NET Framework 4.8.1
- Nuove funzionalità
- Nuove funzionalità di accessibilità
- Note sulla versione
Versioni | |
---|---|
CLR | 4 |
Windows | ✔️ 11 versione 24H2 (versione 26100) ✔️ 11 ottobre 2023 Release (versione 22631) ✔️ 11 settembre 2022 Release (versione 22621) ➕ 11 ottobre 2021 Rilascio (versione 22000) ➕ Aggiornamento 10 2022 (22H2) ➕ Aggiornamento del 10 novembre 2021 ➕ Aggiornamento del 10 maggio 2021 ➕ Aggiornamento del 10 ottobre 2020 |
Windows Server | ➕ Windows Server 2025 ➕ Windows Server 2022 |
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 533320 (Release di Windows 11 settembre 2022 e Windows 11 ottobre 2023)
- 533325 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.8
Versioni | |
---|---|
CLR | 4 |
Windows | ✔️ Aggiornamento di Windows 11 (ottobre 2021) (versione 22000) ✔️ Aggiornamento di Windows 10 (novembre 2021) ✔️ Aggiornamento di Windows 10 (maggio 2021) ✔️ Aggiornamento di Windows 10 (ottobre 2020) ✔️ Aggiornamento di Windows 10 (maggio 2020) ✔️ Aggiornamento di Windows 10 (novembre 2019) ✔️ Aggiornamento di Windows 10 (maggio 2019) ➕ Aggiornamento di Windows 10 (ottobre 2018, versione 1809) ➕ Aggiornamento di Windows 10 (aprile 2018, versione 1803) ➕ 10 Fall Creators Update (versione 1709) ➕ 10 Creators Update (versione 1703) ➕ Aggiornamento dell'anniversario di Windows 10 (versione 1607) ➕ 8.1 ➕7 |
Windows Server | ✔️ Windows Server 2022 ➕ Windows Server 2019 ➕ Windows Server, versione 1809 ➕ Windows Server, versione 1803 ➕ 2016 ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 |
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 528449 (Windows 11 e Windows Server 2022)
- 528372 (Windows 10, aggiornamento maggio 2020 e Windows 10, aggiornamento ottobre 2020, e Windows 10, aggiornamento maggio 2021)
- 528040 (Windows 10, aggiornamento maggio 2019, e Windows 10, aggiornamento novembre 2019)
- 528049 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.7.2
Versioni | |
---|---|
CLR | 4 |
Incluso in Visual Studio | 2019† |
Windows | ✔️ Aggiornamento di Windows 10 (ottobre 2018) (versione 1809) ✔️ Aggiornamento di Windows 10 (aprile 2018) (versione 1803) ➕ 10 Fall Creators Update (versione 1709) ➕ 10 Creators Update (versione 1703) ➕ Aggiornamento dell'anniversario di Windows 10 (versione 1607) ➕ 8.1 ➕7 |
Windows Server | ✔️ Windows Server 2019 ✔️ Windows Server, versione 1809 ✔️ Windows Server, versione 1803 ➕ Windows Server, versione 1709 ➕ 2016 ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 |
†Richiede l'installazione dello sviluppo per desktop .NET, ASP.NET e sviluppo web, sviluppo di Azure, sviluppo di Office/SharePoint, sviluppo per dispositivi mobili con .NETO o carichi di lavoro di sviluppo multipiattaforma .NET Core.
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 461814 (aggiornamento di Windows 10, ottobre 2018)
- 461808 (aggiornamento di Windows 10, aprile 2018 e Windows Server, versione 1803)
- 461814 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.7.1
Versioni | |
---|---|
CLR | 4 |
Windows | ✔️ 10 Fall Creators Update (versione 1709) ➕ 10 Creators Update (versione 1703) ➕ Aggiornamento dell'anniversario di Windows 10 (versione 1607) ➕ 8.1 ➕7 |
Windows Server | ➕ Windows Server, versione 1803 ✔️ Windows Server, versione 1709 ➕ 2016 ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 |
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 461308 (Windows 10 Creators Update e Windows Server, versione 1709)
- 461310 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.7
Versioni | |
---|---|
CLR | 4 |
Windows | ✔️ 10 Creators Update (versione 1703) ➕ Aggiornamento dell'anniversario di Windows 10 (versione 1607) ➕ 8.1 ➕7 |
Windows Server | ➕ 2016 ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 |
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 460798 (Creators Update di Windows 10)
- 460805 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.6.2
Versioni | |
---|---|
CLR | 4 |
Windows | ✔️ Aggiornamento dell'anniversario di Windows 10 (versione 1607) ➕ Aggiornamento di Windows 10, novembre (versione 1511) ➕ 10 ➕ 8.1 ➕ 7 |
Windows Server | ✔️ 2016 ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 ➕ 2008 SP2 |
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 394802 (Aggiornamento dell'anniversario di Windows 10 e Windows Server 2016)
- 394806 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.6.1
Versioni | |
---|---|
CLR | 4 |
Incluso in Visual Studio | 20171 |
Windows | ✔️ Aggiornamento di Windows 10, novembre (versione 1511) ➕ 10 ➕ 8.1 ➕ 8 ➕ 7 |
Windows Server | ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 |
1 Richiede l'installazione dello sviluppo per desktop .NET, ASP.NET e sviluppo web, sviluppo di Azure, sviluppo di Office/SharePoint, Sviluppo per dispositivi mobili con .NET o carichi di lavoro di sviluppo multipiattaforma .NET Core.
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 394254 (Aggiornamento di Windows 10, novembre)
- 394271 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.6
Versioni | |
---|---|
CLR | 4 |
Incluso in Visual Studio | 2015 |
Windows | ✔️ 10 ➕ 8.1 ➕ 8 ➕ 7 ➕ Vista |
Windows Server | ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 ➕ 2008 SP2 |
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 393295 (Windows 10)
- 393297 (tutte le altre versioni del sistema operativo)
Per altre informazioni, vedere le istruzioni.
.NET Framework 4.5.2
Versioni | |
---|---|
CLR | 4 |
Windows | ➕ 8.1 ➕ 8 ➕ 7 ➕ Vista |
Windows Server | ➕ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 ➕ 2008 SP2 |
Per determinare la versione di .NET installata, usare Release
379893 DWORD. Per altre informazioni, vedere le istruzioni.
.NET Framework 4.5.1
Versioni | |
---|---|
CLR | 4 |
Incluso in Visual Studio | 2013 |
Windows | ✔️ 8.1 ➕ 8 ➕ 7 ➕ Vista |
Windows Server | ✔️ 2012 R2 ➕ 2012 ➕ 2008 R2 SP1 ➕ 2008 SP2 |
Per determinare la versione di .NET installata, usare la seguente DWORD Release
:
- 378675 (Windows 8.1)
- 378758 (tutte le altre versioni di Windows)
Per altre informazioni, vedere le istruzioni.
Importante
A partire da Visual Studio 2022, Visual Studio non include più componenti .NET Framework per .NET Framework 4.0 - 4.5.1 perché queste versioni non sono più supportate. Visual Studio 2022 e versioni successive non possono creare app destinate a .NET Framework 4.0 a .NET Framework 4.5.1. Per continuare a compilare queste app, è possibile usare Visual Studio 2019 o una versione precedente.
.NET Framework 4.5
Versioni | |
---|---|
CLR | 4 |
Incluso in Visual Studio | 2012 |
Windows | ✔️ 8 ➕ 7 ➕ Vista |
Windows Server | ✔️ 2012 ➕ 2008 R2 SP1 ➕ 2008 SP2 |
Per determinare la versione di .NET installata, usare Release
378389 DWORD. Per altre informazioni, vedere le istruzioni.
Importante
A partire da Visual Studio 2022, Visual Studio non include più componenti .NET Framework per .NET Framework 4.0 - 4.5.1 perché queste versioni non sono più supportate. Visual Studio 2022 e versioni successive non possono creare app destinate a .NET Framework 4.0 a .NET Framework 4.5.1. Per continuare a compilare queste app, è possibile usare Visual Studio 2019 o una versione precedente.
.NET Framework 4
Versioni | |
---|---|
CLR | 4 |
Incluso in Visual Studio | 2010 |
Windows | ➕ 7 ➕ Vista |
Windows Server | ➕ 2008 R2 SP1 ➕ 2008 SP2 ➕ 2003 |
Per determinare la versione di .NET installata: vedere le istruzioni.
Importante
A partire da Visual Studio 2022, Visual Studio non include più componenti .NET Framework per .NET Framework 4.0 - 4.5.1 perché queste versioni non sono più supportate. Visual Studio 2022 e versioni successive non possono creare app destinate a .NET Framework 4.0 a .NET Framework 4.5.1. Per continuare a compilare queste app, è possibile usare Visual Studio 2019 o una versione precedente.
.NET Framework 3.5
- LINQ
- Alberi delle espressioni
- Miglioramento del supporto ASP.NET per lo sviluppo AJAX
- Raccolte HashSet
- DateTimeOffset
- Integrazione di WCF e WF
- Rete peer-to-peer
- Componenti aggiuntivi ed estensibilità
Versioni | |
---|---|
CLR | 2.0 |
Incluso in Visual Studio | 2008 |
Windows | ✔️ 10* ✔️ 8.1* ✔️ 8* ✔️ 7 ➕ Vista |
Windows Server | ➕ Windows Server, versione 1803* ➕ Windows Server, versione 1709* ➕ 2016* ➕ 2012 R2* ➕ 2012* ✔️2008 R2 SP1* ➕ 2008 SP2 ➕ 2003 |
Per determinare la versione di .NET installata: vedere le istruzioni.
.NET Framework 3.0
- Windows Presentation Foundation
- Windows Communication Foundation
- Windows Workflow Foundation
- Windows CardSpace
Versioni | |
---|---|
CLR | 2.0 |
Windows | ✔️ Vista |
Windows Server | ✔️ 2008 R2 SP1* ✔️ 2008 SP2* ➕ 2003 |
Per determinare la versione di .NET installata: vedere le istruzioni.
.NET Framework 2.0
- Generics
- Debugger, modifica e continuazione
- Scalabilità e prestazioni migliorate
- distribuzione ClickOnce
- In ASP.NET 2.0, nuovi controlli e supporto per un'ampia gamma di browser
- supporto 64 bit
Versioni | |
---|---|
CLR | 2.0 |
Incluso in Visual Studio | 2005 |
Windows | N/D |
Windows Server | ✔️ 2008 R2 SP1 ✔️ 2008 SP2 ✔️ 2003 |
Per determinare la versione di .NET installata: vedere le istruzioni.
.NET Framework 1.1
- Controllo ASP.NET per dispositivi mobili
- Esecuzione side-by-side
- Supporto di IPv6
Versioni | |
---|---|
CLR | 1.1 |
Incluso in Visual Studio | 2003 |
Windows | N/D |
Windows Server | ✔️ 2003 |
Per determinare la versione di .NET installata: vedere le istruzioni.
.NET Framework 1.0
Versioni | |
---|---|
CLR | 1.0 |
Incluso in Visual Studio | Visual Studio .NET |
Windows | N/D |
Windows Server | N/D |
Per determinare la versione di .NET installata: vedere le istruzioni.
Nota
- .NET Framework deve essere abilitato per il sistema operativo tramite Pannello di controllo (per Windows) o Server Manager (per Windows Server).
- In generale, non è opportuno disinstallare alcuna versione di .NET Framework presente nel computer, perché un'applicazione usata potrebbe essere basata su una versione specifica e smettere di funzionare se tale versione viene rimossa. È possibile caricare più versioni di .NET Framework contemporaneamente in un computer. Ciò significa che è possibile installare .NET Framework senza dover disinstallare le versioni precedenti. Per altre informazioni, vedere Introduzione a .NET Framework.
Commenti per la versione 4.5 e successive
.NET Framework 4.5 è un aggiornamento sul posto che sostituisce .NET Framework 4 nel computer, e analogamente, .NET Framework 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2 e 4.8 sono aggiornamenti sul posto a .NET Framework 4.5. Con l’aggiornamento sul posto, è possibile usare la stessa versione di runtime, ma le versioni degli assembly sono aggiornate e includono nuovi tipi e membri. Dopo aver installato uno di questi aggiornamenti, le app .NET Framework 4, .NET Framework 4.5, .NET Framework 4.6 o .NET Framework 4.7 dovrebbero continuare a funzionare senza richiedere la ricompilazione. Non è tuttavia consentito il contrario. Non è consigliabile eseguire app destinate a una versione successiva di .NET Framework su una versione precedente. Ad esempio, non è consigliabile eseguire un'app destinata a .NET Framework 4.6 in .NET Framework 4.5.
Si applicano le linee guida seguenti:
In Visual Studio è possibile scegliere .NET Framework 4.5 come framework di destinazione per un progetto (viene impostata la proprietà GetReferenceAssemblyPaths.TargetFrameworkMoniker) per compilare il progetto come assembly o file eseguibile di .NET Framework 4.5. Questo assembly o file eseguibile puoi poi essere usato in qualsiasi computer in cui è installato .NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2 o 4.8.
In Visual Studio è possibile scegliere .NET Framework 4.5.1 come framework di destinazione per un progetto per compilarlo come assembly o file eseguibile di .NET Framework 4.5.1. Eseguire questo assembly o file eseguibile solo nei computer in cui è installato .NET Framework 4.5.1 o versione successiva. L'esecuzione di un file eseguibile destinato a .NET Framework 4.5.1 verrà bloccata su un computer in cui è installata solo una versione precedente di .NET Framework, ad esempio .NET Framework 4.5. All'utente verrà richiesto di installare .NET Framework 4.5.1. Inoltre gli assembly di .NET Framework 4.5.1 non devono essere chiamati da un'app destinata a una versione precedente di .NET Framework, ad esempio .NET Framework 4.5.
Nota
.NET framework 4.5.1 e .NET Framework 4.5 vengono usati qui solo come esempi. Il principio descritto si applica a qualsiasi app destinata a una versione successiva di .NET Framework rispetto a quella installata nel sistema in cui è in esecuzione.
Alcune modifiche in .NET Framework possono richiedere modifiche al codice dell'app. Vedere Compatibilità delle applicazioni prima di eseguire le app esistenti con .NET Framework 4.5 o versioni successive. Per altre informazioni sull'installazione della versione corrente, vedere Install the .NET Framework for developers (Installare .NET Framework per sviluppatori). Per informazioni sul supporto per .NET Framework, vedere Criteri si supporto ufficiali di .NET Framework nel sito web di .NET.
Commenti per versioni precedenti
Le versioni 2.0, 3.0 e 3.5 di .NET Framework sono compilate con la stessa versione di CLR (CLR 2.0). Queste versioni rappresentano i livelli successivi di una singola installazione. Ogni versione viene compilata in modo incrementale sulle versioni precedenti. Non è possibile eseguire le versioni 2.0, 3.0 e 3.5 affiancate in un computer. Se si installa la versione 3.5, si ottengono automaticamente i livelli 2.0 e 3.0 e le app create per le versioni 2.0, 3.0 e 3.5 possono essere eseguite sulla versione 3.5. Tuttavia, .NET Framework 4 interrompe questo approccio su più livelli e le versioni successive (.NET Framework 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2 e 4.8) rappresentano anche i livelli successivi di una singola installazione. A partire da .NET Framework 4, è possibile usare l'hosting side-by-side in-process per eseguire più versioni di CLR in un unico processo. Per altre informazioni, vedere Assembly ed esecuzione side-by-side.
Se inoltre l'app è destinata alla versione 2.0, 3.0 o 3.5, agli utenti potrebbe essere richiesto di abilitare .NET Framework 3.5 in un computer Windows 8, Windows 8.1 o Windows 10 prima di eseguire l'app. Per altre informazioni, vedere Installare .NET Framework 3.5 in Windows 11, Windows 10, Windows 8.1 e Windows 8.
Importante
A partire da Visual Studio 2022, Visual Studio non include più componenti .NET Framework per .NET Framework 4.0 - 4.5.1 perché queste versioni non sono più supportate. Visual Studio 2022 e versioni successive non possono creare app destinate a .NET Framework 4.0 a .NET Framework 4.5.1. Per continuare a compilare queste app, è possibile usare Visual Studio 2019 o una versione precedente.
Passaggi successivi
Se non si ha familiarità con .NET Framework, vedere la panoramica per un'introduzione ai concetti e alle funzionalità chiave.
Per le nuove funzionalità e i miglioramenti in .NET Framework 4.5 e nelle relative versioni intermedie, vedere Novità di .NET Framework.
Per informazioni sulla migrazione dell'app a una versione più recente di .NET Framework, vedere la guida alla migrazione.
Per informazioni su come determinare le versioni o gli aggiornamenti installati in un computer, vedere Procedura: determinare le versioni di .NET Framework installate e Procedura: determinare gli aggiornamenti di .NET Framework installati.