C# and .Net Version History

โšก Smart Summary

C# and .NET version history traces how Microsoft evolved its language and framework from the 2002 release of .NET Framework 1.0 and C# 1.0 through the modern, cross-platform .NET 10 and C# 14 in 2025.

  • ๐Ÿ—“๏ธ Origin: .NET Framework 1.0 and C# 1.0 launched together in 2002 for Windows development.
  • ๐Ÿงฑ .NET Framework: The Windows-only line reached version 4.8.1 in 2022 and now receives only security fixes.
  • ๐Ÿ”€ The shift: .NET Core, later renamed .NET, replaced the Framework with a cross-platform, open-source runtime.
  • ๐Ÿ†• Latest release: .NET 10 and C# 14 arrived in November 2025 as a long-term-support version.
  • ๐Ÿ’ก C# growth: Each release added features such as generics, async/await, records, and primary constructors.
  • ๐Ÿค– AI relevance: ML.NET, the ONNX Runtime, and GitHub Copilot bring machine learning and AI assistance to modern C#.

C# and .NET Version History

.Net Framework Version History

The first version of the .Net framework was released in the year 2002. The version was called .Net framework 1.0. The .Net framework has come a long way since then, and the latest version is 4.8.1, released in 2022. Newer development has since moved to the cross-platform .NET platform (formerly .NET Core).

Below is the table of .Net framework versions that have been released, with their release dates. Every version has relevant changes to the framework.

For example, in framework 3.5 and onwards, a key framework called the Entity framework was released. This framework is used to change the approach in which applications are developed while working with databases.

Version number CLR version Release date
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

The biggest advantage of the .Net framework is that it supports the Windows platform, which almost everyone works with. Microsoft always ensures that .Net frameworks are in compliance with all the supported Windows operating systems.

Version 4.8.1 is the last major release of the .Net Framework. It remains supported as a built-in Windows component, but Microsoft now delivers new features only through the modern .NET platform described below.

C# Version History

C# has evolved alongside the framework, gaining major language features with almost every release. The table below maps each C# version to its .NET platform and Visual Studio release, together with the headline features it introduced.

Version .NET / Framework Visual Studio Important Features
C# 1.0 .NET Framework 1.0/1.1 Visual Studio .NET 2002 First release of C#
C# 2.0 .NET Framework 2.0 Visual Studio 2005 Generics, partial types, anonymous methods, nullable types, iterators, covariance and contravariance
C# 3.0 .NET Framework 3.0/3.5 Visual Studio 2008 Auto-implemented properties, anonymous types, query expressions, lambda expressions, expression trees, extension methods
C# 4.0 .NET Framework 4.0 Visual Studio 2010 Dynamic binding, named/optional arguments, generic covariance and contravariance, embedded interop types
C# 5.0 .NET Framework 4.5 Visual Studio 2012/2013 Asynchronous members, caller info attributes
C# 6.0 .NET Framework 4.6 Visual Studio 2013/2015 Static imports, exception filters, property initializers, expression-bodied members, null propagator, string interpolation, nameof operator, dictionary initializer
C# 7.0 .NET Framework 4.6.2 / .NET Core Visual Studio 2017 Out variables, tuples and deconstruction, pattern matching, local functions, ref locals and returns, expression-bodied members
C# 8.0 .NET Core 3.0 Visual Studio 2019 Nullable reference types, switch expressions, async streams, default interface methods, ranges and indices
C# 9.0 .NET 5 Visual Studio 2019 Records, init-only setters, top-level statements, pattern-matching enhancements
C# 10 .NET 6 Visual Studio 2022 Global using directives, file-scoped namespaces, record structs, constant interpolated strings
C# 11 .NET 7 Visual Studio 2022 Raw string literals, required members, generic math, list patterns, UTF-8 string literals
C# 12 .NET 8 Visual Studio 2022 Primary constructors, collection expressions, inline arrays, optional lambda parameters, alias any type
C# 13 .NET 9 Visual Studio 2022 params collections, new Lock type, \e escape sequence, implicit index access, ref and unsafe in iterators
C# 14 .NET 10 Visual Studio 2022 Extension members, the field keyword, null-conditional assignment, implicit span conversions, file-based apps

What Is the Difference Between .NET Framework and .NET Core?

The .NET Framework and .NET Core represent two generations of the same idea. The .NET Framework, first released in 2002 and frozen at version 4.8.1, runs only on Windows and is installed as a system component. .NET Core, introduced in 2016, is a ground-up rewrite that runs on Windows, Linux, and macOS. From version 5 onward Microsoft dropped the word “Core” and named the product simply “.NET”, skipping the number 4 to avoid confusion with the older Framework.

The most important differences are:

  • Platform: The .NET Framework is Windows-only, while modern .NET is cross-platform.
  • Source model: Modern .NET is fully open source and developed in the open on GitHub.
  • Deployment: Modern .NET supports side-by-side versions and self-contained apps; only one .NET Framework 4.x can exist per machine.
  • Performance: The CoreCLR runtime behind modern .NET is faster on almost every throughput benchmark.
  • Future: The .NET Framework receives security fixes only, whereas modern .NET gets all new features.

How to Check Your .NET Framework Version

Knowing which version is installed helps you confirm compatibility before running or building an application. On Windows you can check the installed .NET Framework version in several ways:

  • Registry Editor: Open regedit and navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. The Release DWORD maps to a version; for example, 528040 or higher indicates 4.8, and 533320 or higher indicates 4.8.1.
  • Command Prompt: Run reg query “HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP\v4” /s to list the version keys.
  • PowerShell: Run Get-ItemProperty “HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full” | Select-Object Release and compare the number to the official mapping.
  • File Explorer: Open C:\Windows\Microsoft.NET\Framework, enter the highest v4.0.30319 folder, right-click any DLL, and read the Product version.

To check modern .NET instead of the Framework, open a terminal and run dotnet –list-sdks and dotnet –list-runtimes, or dotnet –version for the active SDK. These commands work on Windows, Linux, and macOS.

How Often Are New C# and .NET Versions Released?

Since .NET 5 in 2020, Microsoft has shipped a major .NET release every November, and each one ships with a matching C# language version. This predictable annual cadence replaced the slower, less regular schedule of the old .NET Framework era.

Releases follow two support tracks:

  • Long-Term Support (LTS): Even-numbered releases such as .NET 8 and .NET 10 receive three years of patches and are recommended for production.
  • Standard-Term Support (STS): Odd-numbered releases such as .NET 9 receive eighteen months of support and are ideal for adopting the newest features early.

The .NET Framework does not follow this cadence at all. It stopped at 4.8.1 and stays fixed, so version currency now applies only to the modern .NET line and its C# releases.

FAQs

C# 14 is the latest version, released on November 11, 2025 alongside .NET 10. It added extension members, the field keyword, null-conditional assignment, and implicit span conversions. Because .NET 10 is a long-term-support release, C# 14 is a stable choice for new projects.

Yes. The .NET Framework 4.8.1 remains supported as a Windows operating-system component and receives security and reliability fixes. However, Microsoft adds no new features to it, so most new development targets modern .NET instead of the Framework.

For any new project, choose modern .NET, currently .NET 10. It is cross-platform, faster, open source, and actively developed. Reserve the .NET Framework for maintaining existing Windows-only applications that depend on libraries the newer platform does not support.

Long-Term Support (LTS) releases, such as .NET 8 and .NET 10, receive three years of patches. Standard-Term Support (STS) releases, such as .NET 9, receive eighteen months. Microsoft ships one major .NET version every November, alternating between the two.

Microsoft dropped the word Core with .NET 5 in 2020 to signal one unified platform. The version jumped from 3.1 to 5, skipping 4 to avoid confusion with .NET Framework 4.x. Since then, the product is simply called .NET.

Visual Studio 2022 supports the full .NET Framework up to 4.8.1 and every modern .NET release through .NET 10 with C# 14. Older editions, such as Visual Studio 2019, top out at C# 8 and earlier framework versions.

Yes. ML.NET trains and runs models directly in C#, and the ONNX Runtime executes pre-trained deep learning models. The Microsoft.Extensions.AI libraries connect .NET apps to large language models, so you can add intelligent features without leaving the ecosystem.

Yes. GitHub Copilot suggests C# code inside Visual Studio and VS Code and can assist with upgrading projects between .NET versions. Treat its output as a first draft and review it, since generated code may miss version-specific APIs or edge cases.

Summarize this post with: