Перейти к основному содержимому

Версии C# и .NET — справочная таблица

Краткая шпаргалка для ориентации в экосистеме. Подробная хронология — в Истории платформы .NET. Актуальные даты поддержки сверяйте с официальной политикой Microsoft.


Версии языка C#

Версия C# задаётся в проекте (LangVersion в .csproj) и не всегда совпадает с версией runtime: например, C# 12 можно использовать с net8.0, если SDK это позволяет.

C#ГодПлатформа .NETVisual StudioКлючевые нововведения
1.02002.NET Framework 1.0Visual Studio .NET (2002)свойства, события, делегаты, foreach, unsafe
2.02005.NET Framework 2.0Visual Studio 2005generics, partial, yield, nullable value types (int?)
3.02007.NET Framework 3.5Visual Studio 2008LINQ, var, лямбды, extension methods, анонимные типы
4.02010.NET Framework 4.0Visual Studio 2010dynamic, именованные и опциональные параметры
5.02012.NET Framework 4.5Visual Studio 2012async / await
6.02015.NET Framework 4.6+Visual Studio 2015интерполяция строк, ?., expression-bodied members, Roslyn
7.02017.NET Framework 4.6.2+ / .NET Core 2.0Visual Studio 2017кортежи, pattern matching, ref locals, out variables
8.02019.NET Core 3+ / .NET Framework 4.8Visual Studio 2019nullable reference types, ranges, IAsyncEnumerable
9.02020.NET 5Visual Studio 2019 16.8record, init, top-level statements
10.02021.NET 6Visual Studio 2022global usings, file-scoped namespaces
11.02022.NET 7Visual Studio 2022 17.4raw string literals, required, generic math
12.02023.NET 8Visual Studio 2022 17.8primary constructors, collection expressions
13.02024.NET 9Visual Studio 2022 17.12params collections, ref/unsafe в итераторах
14.02025.NET 10Visual Studio 2026field в свойствах, расширения nameof, Span в лямбдах

Обзоры по версиям на Learn — в справочнике языка C# (472). Спецификация языка — ECMA-334 и C# specification на Microsoft Learn.


Версии платформы .NET (современная линейка)

С .NET 5 единое имя .NET заменило бренд «.NET Core». Каждый ноябрь выходит новый major-релиз; чётные номера — LTS (долгая поддержка), нечётные — STS (стандартная, короче).

ВерсияТипДата выходаОкончание поддержкиVisual Studio
.NET 6LTSноябрь 2021ноябрь 20242022 17.0
.NET 7STSноябрь 2022май 20242022 17.4
.NET 8LTSноябрь 2023ноябрь 20262022 17.8
.NET 9STSноябрь 2024май 20262022 17.12
.NET 10LTSноябрь 2025ноябрь 20282026 18.0

Для новых проектов в 2026 году разумная отправная точка — .NET 8 (ещё в поддержке) или .NET 10 (текущий LTS). Примеры в энциклопедии ориентированы на .NET 8+.

История .NET Core 1.x–3.x, .NET Framework и слияния веток — раздел 12 и статья 11.


.NET Framework (legacy, только Windows)

Последняя версия — 4.8.1 (2022). Новые API в Framework не добавляются; исправления безопасности продолжаются. Типичные сценарии — WinForms, WPF, старый ASP.NET, корпоративные системы на net48.

ВерсияCLRПримечание
2.02.0generics в CLR
3.02.0WinFX — WPF, WCF, WF поверх 2.0
3.52.0C# 3.0, LINQ, ASP.NET AJAX
4.x4async, Roslyn, последняя линейка 4.8 / 4.8.1

Реализации и что выбрать

РеализацияСтатусКогда встречается
.NET (CoreCLR)основная, open sourceновые веб-, cloud-, кроссплатформенные проекты
.NET Frameworkподдержка, без новых фичWindows desktop, legacy IIS
Monoчасть современного .NETBlazor WebAssembly, мобильные workload, Unity (ограниченно)
Portable.NET, DotGNUзамороженытолько исторический контекст

Предварительная компиляция (кратко)

МеханизмЭпохаСуть
NGen (ngen.exe).NET Frameworkнативный код в кэше ОС до запуска; устарел для новых проектов
ReadyToRun (R2R, PublishReadyToRun).NET Core 3+нативные образы при dotnet publish, JIT остаётся для остального
Native AOT (PublishAot).NET 7+статический бинарник без JIT; меньше рефлексии

Подробнее — Платформа .NET — производительность, свойство PublishReadyToRun в справочнике конфигураций.


Связанные материалы

См. также

Другие статьи этого же раздела в боковом меню (как на странице "О разделе").