Version history of C#

 Version history of C# 1.0, 2.0, 3.0, 4.0, 5.0, 6.0

CLR .NET C#  Release Date
1 1 1.0  February 13, 2002
1.0  1.1  1.0  April 24, 2003
2 2 2 November 7, 2005
2 3.0  3.0  November 6, 2006
2 3.5 3.0  November 19, 2007
4 4 4 April 12, 2010
4 4.5 5 August 15, 2012
4 4.5.1  6 October 17, 2013
4 4.5.2  6 May 5, 2014

C# - 1.0
  • Managed code


C# - 2.0
  • Generics
  • Nullable types
  • Delegates
  • Implicit method group conversions and anonymous methods
  • Iterator blocks
  • Partial types
  • Covariance and Contra-variance


C# - 3.0
  • Automatic properties
  • Object and collection initializers
  • Implicitly typed local variables and arrays
  • Anonymous types
  • Lambda expressions
  • Expression trees
  • Extension methods
  • Query expressions/query comprehensions
  • LINQ
  • Var Type 

C# - 4.0
  • Dynamic programming
  • Covariance and contravariance
  • Named and Optional Parameter
  • COM Interop Improvment
  • PLINQ
  • Lazy
  • Task Parallel
  • Expando object
  • Tuple

 
C# - 5.0
  • Asynchronous programming using async and await
  • Profile optimization and multicore JIT
  • Timeout for regex
  • New namespace (new zip/compression support)
  • WeakReference – typing changes/in case an object gets disposed
  • Nice: set internationalization (culture) into app domain
  • Web Sockets
  • TPL Data Flow
  • Caller Information 

C# - 6.0
  • Exception filters
  • Expression-bodied function members
  • Primary Constructors
  • Auto-property initializers
  • Declaration Expressions
  • Semicolon Operator
  • nameof expressions
  • String interpolation
  • Null-Propagation operators
  • Index initializers
  • Await in catch and finally blocks
  • Getter-only auto-properties 
  • Parameterless constructors in structs
C# 7.0
  • Out variables
  • Pattern matching
    • is expressions can now have a pattern
      • ex: o is int i
    • switch statements can now match on patterns
      • ex: case Rectangle s when (s.Length == s.Height):
  • Tuples
  • Local functions
  • Literal improvements
  • Ref returns and locals
  • ex:  return ref number; //return the storage location, not the value
  • Generalized async return types
  • More expression-bodied members
  • Throw expressions
C# 8.0

  • Nullable reference types
  • Switch expressions
  • Default interface methods



 Click here,
 if you are looking .NET versions and aligned features
csharp-version-history


Comments

  1. Want to learn C# from basics & in most professional Code development style. I'll have you writing real working applications in no time flat-before you reach the end of course.
    Hire C# Teacher.

    ReplyDelete

Post a Comment

Popular posts from this blog

Difference between Parse/TryParse/ParseExact/TryParseExact

Benefits of Test Driven Development (TDD)