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 |