返回首页
最近更新:2024-11-18
.NET / C# 年表(2002-2024)及各版本更新汇总
目录
前言
重要里程碑
年表
附录 I:.NET 历次版本更新内容
附录 II:C# 历次版本更新内容
附录 III:.NET Standard 各版本兼容性
其他重要信息
参考资料
前言
该文档内容主要包含了 .NET 平台和 C# 语言各个版本(不包含预览版)的变化与发展。资料整合了微软文档,维基百科以及.NET博客等。
首先了解几个关键名称的含义: .NET / Core / Framework / Standard 。
.NET Framework:与最新的.NET 开发平台相比,.NET Framework 最大的特点是它与Windows是绑定的。
.NET Core:是 .NET Framework 的跨平台开源版本。
.NET Standard:.NET Standard 旨在为 .NET 生态提供一种统一的代码库开发方式,以便开发人员可以轻松的在多个 .NET 实现中共享代码和组件。
.NET:广义的 .NET 可以指包含 .NET Framework,.NET Core 以及 .NET 开发平台以及构建在其上的应用开发框架,也可以特指 .NET 5 及之后的 .NET 开发框架。
SP / Service Pack, 是一系列小更新的打包。
更多 .NET 术语可查看该文档 .NET 术语表
重要里程碑
诞生,2002 年 1 月 15 日 .NET Framework 的首次发布标志这个以 Windows 平台为基础的开发平台诞生。
开源序幕,2014 年 4 月 .NET Compiler Platform (Roslyn)在 4 月的 Build 上作为开放源代码发布,并且成立了 .NET 基金会,标志着微软拉开了 .NET 开源的序幕。
开源之路,2016 年 6 月 27 日 .NET Core 1.0 的发布标志着微软正式走上了 .NET 平台的开源之路。 .NET Core is Open Source
回归统一,.NET 5 的一个主要目标就是提供一个统一的运行时和开发实践。之所以跳过 .NET 4 是为了避免与 .NET Framework 4.x 产生混淆。Introducing .NET 5
.NET Framework 走入幕后,.NET Framework 4.8 将是 .NET Framework 最后的主要版本,微软仍未继续支持,但这标志着 .NET 5以及之后的版本将会是之后 .NET 开发平台的主力。.NET Core is the Future of .NET
年表
.NET 支持情况:
支持终止
支持中
.NET / Core / Framework
C#
Visual Studio
版本
发布时间
Framework CLR版本
Framework 预装于Windows
支持终止日期
版本
ECMA 标准
ISO/IEC 标准
.NET Framework 1.0
2002-01-15
1.0
—
—
C# 1.0
ECMA-334:2003
ISO/IEC 23270:2003
Visual Studio .NET (2002)
.NET Framework 1.0 SP1
2002-03-19
1.0
—
2013-10-08
C# 1.0
↑
↑
.NET Framework 1.0 SP2
2002-08-07
1.0
Windows XP SP1
C# 1.0
↑
↑
.NET Framework 1.0 SP3
2004-08-30
1.0
C# 1.0
↑
↑
.NET Framework 1.1
2003-04-09
1.1
Windows Server 2003(x86)
C# 1.2
Visual Studio .NET 2003
.NET Framework 1.1 SP1
2004-08-30
1.1
Windows XP SP2, SP3 Windows Server 2003 SP1, SP2 (x86)
2015-07-14
C# 1.2
.NET Framework 2.0
2005-10-27
2.0
Windows Server 2003 R2
2011-07-12
C# 2.0
ECMA-334:2006
ISO/IEC 23270:2006
Visual Studio 2005
.NET Framework 2.0 SP1
2007-11-19
2.0
Windows Server 2008
C# 2.0
↑
↑
.NET Framework 2.0 SP2
2008-08-11
2.0
Windows Server 2008 SP2, 2008 R2
C# 2.0
↑
↑
.NET Framework 3.0
2006-11-06
2.0
Windows Vista
2011-07-12
C# 3.0
Visual Studio 2008
.NET Framework 3.0 SP1
2007-11-19
2.0
Windows Vista SP1Windows Server 2008
C# 3.0
.NET Framework 3.0 SP2
2008-08-11
2.0
Windows Vista SP2Windows Server 2008 SP2, 2008 R2
C# 3.0
.NET Framework 3.5
2007-11-19
2.0
C# 3.0
Visual Studio 2008
.NET Framework 3.5 SP1
2008-08-11
2.0
Windows 7,8,8.1,10,11Windows Server 2008 R2, 2012, 2012 R2, v1709-v20H2, 2016-2022
2029-01-09
C# 3.0
.NET Framework 4.0
2010-04-12
4
2016-01-12
C# 4.0
Visual Studio 2010
.NET Framework 4.5
2012-08-15
4
Windows 8Windows Server 2012
2016-01-12
C# 5.0
ECMA-334:2017
ISO/IEC 23270:2018
Visual Studio 2012
.NET Framework 4.5.1
2013-10-17
4
Windows 8.1Windows Server 2012 R2
2016-01-12
C# 5.0
↑
↑
Visual Studio 2013
.NET Framework 4.5.2
2014-05-05
4
2022-04-26
C# 5.0
↑
↑
Visual Studio 2015
.NET Framework 4.6
2015-07-20
4
Windows 10 v1507
2022-04-26
C# 6.0
ECMA-334:2022
Visual Studio 2015
.NET Framework 4.6.1
2015-11-30
4
Windows 10 v1511
2022-04-26
C# 6.0
↑
Visual Studio 2015 Update 1
.NET Core 1.0
2016-06-27
2019-06-27
C# 6.0
↑
Visual Studio 2015 Update 3
.NET Framework 4.6.2
2016-08-02
4
Windows 10 v1607Windows Server 2016
2027-01-12
C# 6.0
↑
Visual Studio 2017 Version 15.0
.NET Core 1.1
2016-11-16
2019-06-27
C# 6.0
↑
Visual Studio 2017 Version 15.0
.NET Framework 4.7
2017-04-05
4
Windows 10 v1703
C#7.1
Visual Studio 2017 Version 15.1
.NET Core 2.0
2017-08-14
2018-10-01
C# 7.1
Visual Studio 2017 Version 15.3
.NET Framework 4.7.1
2017-10-17
4
Windows 10 v1709
C#7.2
Visual Studio 2017 Version 15.5
.NET Framework 4.7.2
2018-04-30
4
Windows 10 v1803-v1809Windows Server 2019
C#7.3
Visual Studio 2017 Version 15.8
.NET Core 2.1
2018-05-30
2021-08-21
C# 7.3
Visual Studio 2017 Version 15.7
.NET Core 2.2
2018-12-04
2019-11-23
C# 7.3
Visual Studio 2019 Version 16.0
.NET Framework 4.8
2019-04-18
4
Windows 10 v1903-v21H2, 11 v21H2Windows Server 2022
C# 7.3
Visual Studio 2019 Version 16.3
.NET Core 3.0
2019-09-23
2020-03-03
C# 8.0
Visual Studio 2019
.NET Core 3.1
2019-12-03
2022-11-13
C# 8.0
Visual Studio 2019
.NET 5
2020-11-10
2022-05-10
C# 9
Visual Studio 2019 Version 16.8
.NET 6
2021-11-08
2024-11-12
C# 10
Visual Studio 2022 Version 17.0
.NET Framework 4.8.1
2022-08-09
4
Windows 10 v22H2, 11 v22H2
C# 7.3
Visual Studio 2022 Version 17.3
.NET 7
2022-11-08
2024-5-14
C# 11
Visual Studio 2022 Version 17.4
.NET 8
2023-11-14
2026-11-10
C# 12
Visual Studio 2022 Version 17.8
.NET 9
2024-11-12
2026-5-12
C# 13
Visual Studio 2022 Version 17.12
附录 I:.NET 历次版本更新内容
.NET 版本
发布时间
更新内容
.NET Framework 1.0
2002-01-15
基础功能
发布新闻
.NET Framework 1.1
2003-04-09
新增功能:
ASP.NET 移动控件
并行执行
IPv6 支持
.NET Framework 2.0
2005-10-27
新增功能:
泛型
调试器编辑并继续
提高了可伸缩性和性能
ClickOnce 部署
在 ASP.NET 2.0 中,提供了新控件以及对各种浏览器的支持
64 位支持
.NET Framework 3.0
2006-11-06
新增功能:
Windows Presentation Foundation
Windows Communication Foundation
Windows Workflow Foundation
Windows CardSpace
.NET Framework 3.5
2007-11-19
新增功能:
LINQ
表达式树
改进了对 AJAX 开发的 ASP.NET 支持
HashSet 集合
DateTimeOffset
WCF 和 WF 集成
对等网络
扩展性的加载项
.NET Framework 4
2010-04-12
更新内容包括以下方面:
应用程序兼容性和部署
核心新增功能和改进
Managed Extensibility Framework
并行计算
网络
Web
客户端
数据
Windows Communication Foundation
Windows Workflow Foundation
新增功能详情
.NET Framework 4.5
2012-08-15
更新内容包括以下方面:
基础类型
Managed Extensibility Framework (MEF)
异步文件操作
工具
并行计算
Web
网络连接
并行计算
Web
Windows Presentation Foundation (WPF)
Windows Communication Foundation (WCF)
Windows Workflow Foundation (WF)
新增功能详情
.NET Framework 4.5.1
2013-10-17
新增功能详情
.NET Framework 4.5.2
2014-05-05
更新内容包括以下方面:
ASP.NET 应用的新 API
在 Windows 窗体控件中调整大小
新工作流功能
分析改进
调试改进
事件跟踪更改
提升事务并将其转换为持久登记
新增功能详情...
.NET Framework 4.6
2015-07-20
更新内容包括以下方面:
ASP.NET 更新
HTTP/2 支持 (Windows 10)
对令牌绑定协议的支持
随机字符串哈希算法
ADO.NET
托管代码的 64 位 JIT 编译器
程序集加载程序改进
基类库更改
Windows Presentation Foundation (WPF)
Windows Communication Foundation (WCF)
Windows Workflow Foundation (WWF)
事务
网络连接
在 Windows 窗体控件中调整大小
对代码页编码的支持
.NET Native
开放源代码 .NET Framework 包
新增功能详情...
.NET Framework 4.6.1
2015-11-30
更新内容包括以下方面:
加密:支持包含 ECDSA 在内的 X509 证书
ADO.NET
Windows Presentation Foundation (WPF)
Windows Workflow Foundation:事务
非托管分析 API
本机映像生成器 (NGEN) PDB
新增功能详情...
.NET Core 1.0
2016-06-27
.NET Core 1.0 发布文章
.NET Core 1.0 内容
.NET Framework 4.6.2
2016-08-02
更新内容包括以下方面:
ASP.NET
字符类别
密码
SqlClient
Windows Communication Foundation
Windows Presentation Foundation (WPF)
Windows Workflow Foundation (WF)
ClickOnce
将 Windows 窗体和 WPF 应用转换为 UWP 应用
调试改进
新增功能详情...
.NET Core 1.1
2016-11-16
更新内容包括以下方面:
New OS Distros Added
Symbol packages for .NET 1.1 are available
.NET Core API
WCF
ASP.NET Core
新增功能详情...
.NET Framework 4.7
2017-04-05
更新内容包括以下方面:
基础类型
网络连接
ASP.NET
Windows Communication Foundation (WCF)
Windows 窗体
Windows Presentation Foundation (WPF)
新增功能详情...
.NET Core 2.0
2017-08-14
更新内容包括以下方面:
工具
语言支持:支持 C# 7.1, 新增支持 Visual Basic
平台改进
API 更改
Visual Studio 集成
文档改进
新增功能详情...
.NET Framework 4.7.1
2017-10-17
更新内容包括以下方面:
基础类型
公共语言运行时 (CLR)
网络连接
ASP.NET
新增功能详情...
.NET Framework 4.7.2
2018-04-30
更新内容包括以下方面:
基础类型
ASP.NET
网络连接
SQL
WPF
ClickOnce
新增功能详情...
.NET Core 2.1
2018-05-30
更新内容包括以下方面:
工具
前滚
部署
Windows 兼容包
JIT 编译改进
API 更改
新增功能详情...
.NET Core 2.2
2018-12-04
更新内容包括以下方面:
新部署模式
核心
数据
JIT 编译器改进
运行时
新增功能详情...
.NET Framework 4.8
2019-04-18
更新内容包括以下方面:
基础类型
Windows Communication Foundation (WCF)
Windows Presentation Foundation (WPF)
公共语言运行时
辅助功能
新增功能详情...
.NET Core 3.0
2019-09-23
更新内容包括以下方面:
语言改进 C# 8.0
.NET Standard 2.1
编译/部署
单文件可执行文件
程序集剪裁
分层编译
ReadyToRun 映像
跨平台/体系结构限制
新增功能详情...
.NET Core 3.1
2019-12-03
更新内容包括以下方面:
长期支持
macOS appHost 和公证
Windows 窗体
C++/CLI
新增功能详情...
.NET 5
2020-11-10
更新内容包括以下方面:
C# 更新:C# 9
F# 更新
Visual Basic 更新
System.Text.Json 新功能
单一文件应用
应用剪裁
Windows Arm64 和 Arm64 内部函数
转储调试的工具支持
对于可以为 null 的引用类型,运行时库的批注百分比为 80%
性能改进
.NET 5 不会替换 .NET Framework
Windows Communication Foundation
.NET 5 不会替代 .NET Standard
新增功能详情...
.NET 6
2021-11-08
更新内容包括以下方面:
性能改进
FileStream
按配置优化
Crossgen2
Arm64 支持
热重载
.NET MAUI
C# 10 和模板
F# 和 Visual Basic
SDK 工作负载
System.Text.Json APIs
源生成器
可写 DOM
IAsyncEnumerable 序列化
一些新 API
HTTP/3
ASP.NET Core
OpenTelemetry
安全性
IL 剪裁
代码分析
自定义平台临界子句
Windows 窗体
源生成
目标框架名字对象
泛型数学
.NET 包验证
反射 API
Microsoft.Extensions API
新的 LINQ API
日期、时间和时区改进
PriorityQueue 类
新增功能详情...
.NET Framework 4.8.1
2022-08-09
更新内容包括以下方面:
Native support for Arm64
Accessible Tooltips
Windows Forms
新增功能详情...
.NET 7
2022-11-08
更新内容包括以下方面:
性能
System.Text.Json 序列化
泛型数学
正则表达式
.NET 库
可观察性
.NET SDK
dotnet new 模板
发布到容器
中央包管理
P/Invoke 源生成
C# 11
F# 7
新增功能详情...
.NET 8
2023-11-14
更新内容包括以下方面:
序列化
时间抽象
UTF8 改进
处理随机性的方法
以性能为中心的类型
System.Numerics 和 System.Runtime.Intrinsics
数据验证
度量值
加密
网络连接
基于流的 ZipFile 方法
C# 12
F# 8
Visual Basic 16.9
新增功能详情...
.NET 9
2024-11-12
更新内容包括以下方面:
.NET运行时
序列化
LINQ
集合
加密
反射
“性能”
.NET SDK
单元测试
.NET 工具前滚行为
库
Base64Url
BinaryFormatter
Collections
Component model - TypeDescriptor trimming support
C# 13.0
新增功能详情...
附录 II:C# 历次版本更新内容
C# 版本
发布时间
更新内容
C# 1.0
2002 年 1 月
基础功能:
类
结构
接口
事件
属性
委托
运算符和表达式
语句
特性
C# 1.2
2003 年 4 月
对语言做了一些小改进。 主要更新:当 IEnumerator 实现 IDisposable 时,foreach 循环中生成的代码会在 IEnumerator 上调用 Dispose。
C# 2.0
2005 年 11 月
主要更新:
泛型
分部类型
匿名方法
可以为 null 的值类型
迭代器
协变和逆变
改进:
getter/setter 单独可访问性
方法组转换(委托)
静态类
委托推断
C# 3.0
2007 年 11 月
更新内容:
自动实现的属性
匿名类型
查询表达式
Lambda 表达式
表达式树
扩展方法
隐式类型本地变量
分部方法
对象和集合初始值设定项
C# 4.0
2010 年 4 月
更新内容:
动态绑定
命名参数/可选参数
泛型协变和逆变
嵌入的互操作类型
C# 5.0
2012 年 8 月
更新内容:
异步成员
调用方信息特性
代码工程:C# 5.0 中的调用方信息属性
C# 6.0
2015 年 7 月
更新内容:
静态导入
异常筛选器
自动属性初始化表达式
Expression bodied 成员
Null 传播器
字符串内插
nameof 运算符
其他改进:
索引初始化表达式
Catch/Finally 块中的 Await
仅限 getter 属性的默认值
C# 7.0
2017 年 3 月
更新内容:
out 变量
元组和析构函数
模式匹配
本地函数
已扩展 expression bodied 成员
ref 局部变量
引用返回
其他改进:
弃元
二进制文本和数字分隔符
引发表达式
C# 7.1
2017 年 8 月
更新内容:
asyncMain 方法
default 文本表达式
推断元组元素名称
泛型类型参数的模式匹配
编译器有 -refout 和 -refonly 选项
C# 7.2
2017 年 11 月
更新内容:
stackalloc 数组上的初始值设定项
对支持模式的任何类型使用 fixed 语句。
无需使用 fixed 即可访问 fixed 字段
重新分配 ref 本地变量
声明 readonly struct 类型,以指示结构不可变且应作为 in 参数传递到其成员方法。
在实参上添加 in 修饰符,以指定形参通过引用传递,但不通过调用方法修改。
对方法返回项使用 ref readonly 修饰符,以指示方法通过引用返回其值,但不允许写入该对象。
声明 ref struct 类型,以指示结构类型直接访问托管的内存,且必须始终分配有堆栈。
新添加泛型约束。
非尾随命名参数
数值文字中的前导下划线。
private protected 访问修饰符
条件 ref 表达式,现在可以引用条件表达式 (?:) 的结果。
C# 7.3
2018 年 5 月
以下新增功能支持使安全代码获得更好的性能:
无需 pinging 即可访问 fixed 字段
可重新分配 ref 本地变量。
可以使用 stackalloc 数组上的初始值设定项。
可以对支持模式的任何类型使用 fixed 语句。
可以使用更多泛型约束。
对现有功能进行了以下增强:
可以使用元组类型测试 == 和 !=。
可以在更多位置使用表达式变量。
可以将 Attribute 附加到自动实现的属性对应的字段。
由 in 区分的参数的方法解析得到了改进
重载解析的多义情况现在变得更少。
新增编译器选项:
-publicsign,用于启用程序集的开放源代码软件 (OSS) 签名。
-pathmap用于提供源目录的映射。
C# 8.0
2019 年 9 月
更新内容:
Readonly 成员
默认接口方法
模式匹配功能增强
Using 声明
静态本地函数
可处置的 ref 结构
可为空引用类型
异步流
索引和范围
Null 合并赋值
非托管构造类型
嵌套表达式中的 Stackalloc
内插逐字字符串的增强功能
C# 9
2020 年 11 月
更新内容:
record
仅初始化属性 setter
顶级语句 top-level statements
模式匹配增强
性能与互操作更新:
本机大小的整数
函数指针
禁止发出 localsinit 标志
调整和完成功能:
目标类型的 new 表达式
static 匿名函数
目标类型的条件表达式
协变返回类型
扩展 GetEnumerator 支持 foreach 循环
Lambda 弃元参数
本地函数的属性
支持代码生成器:
模块初始值设定项
分部方法的新功能
C# 10
2021 年 11 月
更新内容:
记录结构
结构类型的改进
内插字符串处理程序
global using 指令
文件范围的命名空间声明
扩展属性模式
对 Lambda 表达式的改进
可使用 const 内插字符串
记录类型可密封 ToString()
改进型明确赋值
在同一析构中可同时进行赋值和声明
可在方法上使用 AsyncMethodBuilder 属性
CallerArgumentExpression 属性
增强的 #line pragma
新的编译警告:警告波 6
C# 11
2022 年 11 月
更新内容:
原始字符串字面量
泛型数学支持
泛型属性
UTF-8 字符串字面量
字符串内插表达式中的换行符
列表模式
文件本地类型
必需的成员
自动默认结构
常量 string 上的模式匹配 Span
扩展的 nameof 范围
数值 IntPtr
ref 字段和 scoped ref
改进了方法组向委托的转换
新的编译警告:警告波 7
C# 12
2023 年 11 月
更新内容:
主构造函数
集合表达式
默认 Lambda 参数
任何类型的别名
内联数组
拦截器
C# 13
2024 年 11 月
更新内容:
新的转义序列
方法组自然类型
隐式索引访问
附录 III:.NET Standard 各版本兼容性
重要信息:.NET Standard 将不会有新的版本。.NET Standard 旨在为 .NET 生态提供一种统一的代码库开发方式,以便开发人员可以轻松的在多个 .NET 实现中共享代码和组件。这些 .NET 实现主要包括 .NET / Core, .NET Framework 和 Mono 。不过随着 .NET 5 的发布,.NET 平台将采用不同的方法来建设这种统一性,所以 .NET Standard 2.1 将会是其最后的版本。.NET Standard 将不会有新的版本
.NET Standard 版本
API 数量
.NET / Core
.NET Framework
Unity
Mono
.NET Standard 1.0
21.41% (7949 / 37118)
所有版本均支持
4.5+ 版本均支持
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 1.1
27.58% (10239 / 37118)
所有版本均支持
4.5+ 版本均支持
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 1.2
27.71% (32638 / 10285)
所有版本均支持
4.5
4.5.1
4.5.2
4.6
4.6.1
4.6.2
4.7
4.7.1
4.7.2
4.8
4.8.1
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 1.3
35.35% (13122 / 37118)
所有版本均支持
4.5
4.5.1
4.5.2
4.6
4.6.1
4.6.2
4.7
4.7.1
4.7.2
4.8
4.8.1
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 1.4
35.40% (13140 / 37118)
所有版本均支持
4.5
4.5.1
4.5.2
4.6
4.6.1
4.6.2
4.7
4.7.1
4.7.2
4.8
4.8.1
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 1.5
35.98% (13355 / 37118)
所有版本均支持
4.5
4.5.1
4.5.2
4.6
4.6.1
4.6.2
4.7
4.7.1
4.7.2
4.8
4.8.1
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 1.6
36.37% (13501 / 37118)
所有版本均支持
4.5
4.5.1
4.5.2
4.6
4.6.1
4.6.2
4.7
4.7.1
4.7.2
4.8
4.8.1
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 2.0
87.93% (32638 / 37118)
1.0
1.1
2.0
2.1
2.2
3.0
3.1
5.0
6.0
7.0
4.5
4.5.1
4.5.2
4.6
4.6.1
4.6.2
4.7
4.7.1
4.7.2
4.8
4.8.1
2018.1
2021.2
4.6
5.4
6.4
.NET Standard 2.1
100% (37118 / 37118)
1.0
1.1
2.0
2.0
2.1
2.2
3.0
3.1
5.0
6.0
7.0
所有版本均不支持
2018.1
2021.2
4.6
5.4
6.4
其他重要信息
.NET Framework 是专有软件
.NET / .NET Core 的开源许可为 MIT 许可
[官方文档].NET 术语表
.NET 官网
.NET / Core / Framework 运行时及 SDK 下载地址
.NET 基金会
.NET GitHub
.NET 官方教程
.NET Framework 官方教程
C# 官方教程
The Book of the Runtime
[官方文档].NET 版本与支持
参考资料
[官方文档].NET Framework 更新历史
[官方文档].NET / Core 更新历史
[官方文档]C# 语言更新历史
[官方文档].NET Standard 兼容性
[GitHub].NET 发布说明
[GitHub].NET Framework 发布说明
[GitHub].NET 生命周期
[官方].NET Framework 生命周期
[官方].NET 20 周年页面
[官方]Runtime 文档
[官方]Visual Studio 路线图与发行说明
[ECMA]C# 国际标准
[wikipedia].NET Framework 版本历史
[wikipedia].NET / Core 版本历史
[wikipedia]Visual Studio 版本历史
[wikipedia]C# 版本历史