Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / HPC / parallel-processing

.Net and C# release history

4.76/5 (27 votes)
14 Dec 2013CPOL2 min read 53.1K  
I always find it difficult to track .Net and C# language release history. E.g. what .net versions are released with different visual studio versions and what features are available in different versions of C# language. So I thought I will compile this information in this blog so I and other can refe

I always find it difficult to track .Net and C# language release history. E.g. what .net versions are released with different visual studio versions and what features are available in different versions of C# language. So I thought I will compile this information in this blog so I and other can refer it when needed.

.Net Version Release history
.Net VersionRelease DateToolFeature
1.02002Visual Studio .NetFirst release of .net
1.12003Visual Studio 2003Support for ASP.Net mobile controls
Supports side-by-side execution
Security Changes
2.02005Visual Studio 2005Generics (with generic collection)
Nullable Types
Support of IPv6 addresses in .net remoting
Common Language Runtime 2.0
3.02006WCF (Communication framework)
WPF (Presentation framework)
WF (Workflow Foundation)
3.52008Visual Studio 2008LINQ
Addin / Plugin Model (System.AddIn.Contract.dll)
4.02010Visual Studio 2010Parallel Computing
Code Contracts
Lazy Initialization
Dynamic Language Runtime
In-process side-by-side hosting
Background garbage collection
Covariance and Contravariance
Common Language Runtime 4.0
4.52012Visual Studio 2012Enhanced regular expression support
Default culture for application domain
Zip compression
Support of array with size more than 2GB
Asynchronous file operation
Improvement in parallel computing
4.5.12013Visual Studio 2013Ability to collect diagnostics information
Ability to explicitly compact the large object heap (LOH) during garbage collection
Additional performance improvements such as ASP.NET app suspension
Multi-core JIT improvements


Note:
- .Net 3.5, 3.0 and 2.0 uses same common language runtime version 2.0.
- .Net 4.5, 4.5.1 and 4.0 share same common language runtime version 4.0.
- I have not included language features in above list e.g. Partial classes / anonymous method. I will cover them in following section.

C# Language Release history
C# VersionRelease DateToolFeature
1.02002Visual Studio .NetFirst release of .net
2.02005Visual Studio 2005Partial classes
Support for generics
Iterators
Nullable syntax
Anonymous methods
Static class
Volatile keyword
3.02008Visual Studio 2008Implicitly Typed Local Variables
Extension Methods
Lambda Expressions
Type Inference
Object and Collection Initializers
Anonymous Types
Automatically Implemented Properties
Expression Trees
4.02010Visual Studio 2010Support for Covariance and Contravariance
Optional parameters and named arguments
Support for Dynamic and DLR
Enhanced support for COM interop
5.02012Visual Studio 2012Async / Await Feature
Support for caller information

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)