Summary of C# History & Features
Introduced In Feature Summary Link
C# 3.0 Features
3.0 Auto Implemented Properties MS Docs
3.0 Anonymous Types MS Docs
3.0 Query Expressions MS Docs
3.0 Lambda Expressions MS Docs
3.0 Expression Trees MS Docs
3.0 Implicitly Types Local Variables MS Docs
3.0 Partial Methods MS Docs
3.0 Object and Collection Initializers MS Docs
C# 4.0 Features
4.0 Dynamically Typed Variables MS Docs
4.0 Named and Optional Arguments MS Docs
4.0 Covariance and Contravariance in Generics MS Docs
4.0 Embedded Interop Types MS Docs
C# 5.0 Features
5.0 Asynchronous Members MS Docs
5.0 Caller Info Attributes MS Docs
C# 6.0 Features
6.0 Read-Only Auto-properties MS Docs
6.0 Auto-Property Initializers MS Docs
6.0 Expression-Bodied Function Members MS Docs
6.0 using static MS Docs
6.0 Null-Conditional Operators MS Docs
6.0 String Interpolation MS Docs
6.0 Exception Filters MS Docs
6.0 nameof Expressions MS Docs
6.0 await in catch and finally blocks MS Docs
6.0 Index Initializers MS Docs
6.0 Use Add() Extension Method in Collection Initializers MS Docs
6.0 Improved Overload Resolution in Lambda Expressions MS Docs
6.0 Deterministic Compiler Output Option MS Docs
C# 7.0 Features
7.0 Inline Declaration of out Variables MS Docs
7.0 Tuples MS Docs
7.0 Discards MS Docs
7.0 Pattern Matching in is Expressions and switch Statements MS Docs
7.0 Reference Variables in Locals and Returns MS Docs
7.0 Local Functions MS Docs
7.0 Expression-Bodied Contructors, Finalizers, and Accessors MS Docs
7.0 Throw Expressions MS Docs
7.0 Generalized Return Types for Async Methods MS Docs
7.0 Binary Numeric Literals MS Docs
7.0 Digit Separators in Numeric Literals MS Docs
C# 7.1 Features
7.1 Asynchronous Main Methods MS Docs
7.1 Default Literal Expressions MS Docs
7.1 Inferred Tuple Element Names MS Docs
7.1 Reference Assembly Generation MS Docs
C# 7.2 Features
7.2 Reference Semantics with Value Types MS Docs
7.2 Non-Trailing Named Arguments MS Docs
7.2 Leading Underscores in Numeric Literals MS Docs
7.2 private protected Access Modifier MS Docs
C# 7.3 Features
7.3 More Performant Safe Code MS Docs
7.3 Equality and Inequality Tests in Tuples MS Docs
7.3 Extended Expression Variables in Initializers MS Docs
7.3 More Improvements to Overload Candidates MS Docs
7.3 Compiler Option to Sign an Assembly Using a Public Key MS Docs
7.3 Mapped Source Paths Compiler Option MS Docs