C# e Cronologia delle versioni .Net
⚡ Riepilogo intelligente
Cronologia delle versioni di C# e .NET traces come Microsoft ha evoluto il suo linguaggio e il suo framework dalla versione 1.0 di .NET Framework e C# 1.0 del 2002 fino alle moderne versioni multipiattaforma .NET 10 e C# 14 del 2025.
Cronologia delle versioni di .Net Framework
La prima versione del framework .NET è stata rilasciata nel 2002 con il nome di .NET Framework 1.0. Da allora, il framework .NET ha fatto molta strada e l'ultima versione è la 4.8.1, rilasciata nel 2022. Lo sviluppo più recente si è poi spostato sulla piattaforma multipiattaforma .NET (precedentemente nota come .NET Core).
Di seguito è riportata la tabella delle versioni di .NET Framework rilasciate, con le relative date di rilascio. Ogni versione introduce modifiche rilevanti al framework.
Ad esempio, nel framework 3.5 e successivi, un framework chiave chiamato il Quadro di entità è stato rilasciato. Questo framework viene utilizzato per cambiare l'approccio con cui vengono sviluppate le applicazioni durante il lavoro con banche dati.
| Numero di versione | Versione CLR | Data di rilascio |
|---|---|---|
| 1.0 | 1.0 | 2002-02-13 |
| 1.1 | 1.1 | 2003-04-24 |
| 2.0 | 2.0 | 2005-11-07 |
| 3.0 | 2.0 | 2006-11-06 |
| 3.5 | 2.0 | 2007-11-19 |
| 4.0 | 4 | 2010-04-12 |
| 4.5 | 4 | 2012-08-15 |
| 4.5.1 | 4 | 2013-10-17 |
| 4.5.2 | 4 | 2014-05-05 |
| 4.6 | 4 | 2015-07-20 |
| 4.6.1 | 4 | 2015-11-17 |
| 4.6.2 | 4 | 2016-08-02 |
| 4.7 | 4 | 2017-04-05 |
| 4.7.1 | 4 | 2017-10-17 |
| 4.7.2 | 4 | 2018-04-30 |
| 4.8 | 4 | 2019-04-18 |
| 4.8.1 | 4 | 2022-08-09 |
Il più grande vantaggio di .Net quadro è che supporta il Windows piattaforma con cui lavorano quasi tutti. Microsoft garantisce sempre che i framework .Net siano conformi a tutto ciò che è supportato Windows sistemi operativi.
La versione 4.8.1 è l'ultima release principale del .Net Framework. Rimane supportata come componente integrato. Windows componente, ma Microsoft Ora le nuove funzionalità vengono fornite esclusivamente tramite la moderna piattaforma .NET descritta di seguito.
Cronologia delle versioni di C#
C# si è evoluto di pari passo con il framework, acquisendo importanti funzionalità del linguaggio quasi ad ogni rilascio. La tabella seguente associa ogni versione di C# alla sua piattaforma .NET e alla versione di Visual Studio corrispondente, insieme alle principali funzionalità introdotte.
| Versione | .NET/Framework | Di Visual Studio | Caratteristiche importanti |
|---|---|---|---|
| C # 1.0 | .NET Framework 1.0 / 1.1 | Visual Studio .NET 2002 | Prima versione di C# |
| C # 2.0 | .NET Framework 2.0 | Visual Studio 2005 | Tipi generici, tipi parziali, metodi anonimi, tipi nullable, iteratori, covarianza e controvarianza |
| C # 3.0 | .NET Framework 3.0 / 3.5 | Visual Studio 2008 | Proprietà implementate automaticamente, tipi anonimi, espressioni di query, espressioni lambda, alberi di espressioni, metodi di estensione |
| C # 4.0 | .NET Framework 4.0 | Visual Studio 2010 | Collegamento dinamico, argomenti denominati/opzionali, covarianza e controvarianza generiche, tipi di interoperabilità incorporati |
| C # 5.0 | .NET Framework 4.5 | VisualStudio 2012/2013 | Membri asincroni, attributi delle informazioni del chiamante |
| C # 6.0 | .NET Framework 4.6 | VisualStudio 2013/2015 | Importazioni statiche, filtri di eccezione, inizializzatori di proprietà, membri con corpo di espressione, propagatore nullo, interpolazione di stringhe, operatore nameof, inizializzatore di dizionario |
| C # 7.0 | .NET Framework 4.6.2 / .NET Core | Visual Studio 2017 | Variabili di output, tuple e decostruzione, corrispondenza di pattern, funzioni locali, variabili locali di riferimento e valori di ritorno, membri con corpo di espressione |
| C # 8.0 | .NET Nucleo 3.0 | Visual Studio 2019 | Tipi di riferimento nullable, espressioni switch, flussi asincroni, metodi di interfaccia predefiniti, intervalli e indici |
| C # 9.0 | .NET 5 | Visual Studio 2019 | Record, metodi setter solo per l'inizializzazione, istruzioni di primo livello, miglioramenti alla corrispondenza di pattern |
| C # 10 | .NET 6 | Visual Studio 2022 | Direttive using globali, namespace con ambito di file, strutture record, stringhe interpolate costanti |
| C # 11 | .NET 7 | Visual Studio 2022 | Letterali di stringa raw, membri obbligatori, matematica generica, modelli di lista, letterali di stringa UTF-8 |
| C # 12 | .NET 8 | Visual Studio 2022 | Costruttori primari, espressioni di collezione, array inline, parametri lambda opzionali, alias di qualsiasi tipo |
| C # 13 | .NET 9 | Visual Studio 2022 | collezioni di parametri, nuovo tipo di blocco, sequenza di escape \e, accesso implicito all'indice, ref e unsafe negli iteratori |
| C # 14 | .NET 10 | Visual Studio 2022 | Membri dell'estensione, la parola chiave del campo, l'assegnazione condizionale nulla, le conversioni implicite di span, le applicazioni basate su file |
Qual è la differenza tra .NET Framework e .NET Core?
Il .NET Framework e il .NET Core rappresentano due generazioni della stessa idea. Il .NET Framework, rilasciato per la prima volta nel 2002 e bloccato alla versione 4.8.1, funziona solo su Windows e viene installato come componente di sistema. .NET Core, introdotto nel 2016, è una riscrittura completa che viene eseguita su Windows, Linux e macOSDalla versione 5 in poi Microsoft ha eliminato la parola "Core" e ha chiamato il prodotto semplicemente ".NET", saltandoping il numero 4 per evitare confusione con il vecchio Framework.
Le differenze più importanti sono:
- Piattaforma: Il .NET Framework è Windows-solo, mentre il .NET moderno è multipiattaforma.
- Modello sorgente: .NET moderno è completamente open source e sviluppato pubblicamente su GitHub.
- distribuzione: Le versioni moderne di .NET supportano versioni affiancate e applicazioni autonome; per ogni macchina può essere presente una sola istanza di .NET Framework 4.x.
- Performance: Il runtime CoreCLR alla base delle moderne applicazioni .NET risulta più veloce in quasi tutti i benchmark di throughput.
- Future: Il .NET Framework riceve solo correzioni di sicurezza, mentre le versioni moderne di .NET ricevono tutte le nuove funzionalità.
Come verificare la versione di .NET Framework
Sapere quale versione è installata ti aiuta a confermare la compatibilità prima di eseguire o creare un'applicazione. Su Windows È possibile verificare la versione di .NET Framework installata in diversi modi:
- Editor del Registro di sistema: Apri regedit e vai a HKEY_LOCAL_MACHINE \ SOFTWARE \Microsoft\NET Framework Setup\NDP\v4\Full. Rilasciare I valori DWORD corrispondono a una versione; ad esempio, 528040 o superiore indica la versione 4.8, mentre 533320 o superiore indica la versione 4.8.1.
- Prompt dei comandi: Correre query reg “HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP\v4” /s per elencare le chiavi di versione.
- PowerShell: Correre Get-ItemProperty “HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full” | Select-Object Release e confrontare il numero con la mappa ufficialeping.
- Esplora file: Apri C: \Windows\Microsoft.NET\Framework, inserisci il più alto v4.0.30319 Nella cartella, fai clic con il pulsante destro del mouse su una qualsiasi DLL e leggi la versione del prodotto.
Per controllare .NET moderno invece del Framework, apri un terminale ed esegui dotnet –list-sdks and dotnet –list-runtimes, o dotnet –versione per l'SDK attivo. Questi comandi funzionano su Windows, Linux e macOS.
Con quale frequenza vengono rilasciate nuove versioni di C# e .NET?
A partire da .NET 5 nel 2020, Microsoft Ogni novembre rilascia una versione principale di .NET, e ognuna di esse viene rilasciata con una corrispondente versione del linguaggio C#. Questa cadenza annuale prevedibile ha sostituito il programma più lento e meno regolare della vecchia era di .NET Framework.
Le versioni seguono due supporti track:
- Supporto a lungo termine (LTS): Le versioni con numero pari, come .NET 8 e .NET 10, ricevono aggiornamenti per tre anni e sono consigliate per l'ambiente di produzione.
- Sostegno a termine standard (STS): Le versioni dispari, come .NET 9, ricevono diciotto mesi di supporto e sono ideali per adottare tempestivamente le funzionalità più recenti.
Il .NET Framework non segue affatto questa cadenza. Si è fermato alla versione 4.8.1 e rimane fisso, quindi la validità delle versioni si applica ora solo alla linea .NET moderna e alle sue release C#.

