Every so often, a question comes up about how Visual Studio, the .NET Framework, and a .NET programming language relate to each other. Mostly, these questions have to do with versions. The reality is that these are actually three different “products” that are versioned independently of each other but are related.
Looking at how Visual Studio, the .NET Framework version, and the CLR versions relate to each other results in the following:
Visual Studio | CLR | .NET Framework |
Visual Studio .NET (Ranier) | 1.0.3705 | 1.0 |
Visual Studio 2003 (Everett) | 1.1.4322 | 1.1 |
Visual Studio 2005 (Whidbey) | 2.0.50727 | 2.0 |
Visual Studio 2005 with .NET 3.0 Extensions | 2.0.50727 | 2.0, 3.0 |
Visual Studio 2008 (Orcas) | 2.0.50727 | 2.0 SP1, 3.0 SP1, 3.5 |
Visual Studio 2008 SP1 | 2.0.50727 | 2.0 SP2, 3.0 SP2, 3.5 SP1 |
Visual Studio 2010 (Hawaii) | 4.0.30319 | 4.0 |
The actual Visual Studio version numbers are:
Product Name | Version | Ship Date |
Visual Studio .NET | 7.0.???? | 02/2002 |
Visual Studio .NET 2002 SP1 | 7.0.???? | |
Visual Studio 2003 | 7.1.???? | 04/2003 |
Visual Studio 2003 SP1 | 7.1.6030 | 09/13/2006 |
Visual Studio 2005 | 8.0.5072 | |
Visual Studio 2005 SP1 | | 12/14/2006 |
Visual Studio 2008 | 9.0.21022.8 | 11/19/2007 |
Visual Studio 2008 SP1 | 9.0.30729.1 | |
Visual Studio 2010 | 10.0.30319.1 | 04/12/2010 |
(For those entries that are missing information, it simply means that I didn't already know it and/or couldn't easily find it online.)
So far, everything seems fairly reasonable and isn't terribly difficult to keep coordinated. However, when you start trying to find language versions and how those relate to .NET Framework, CLR, or Visual Studio releases, it becomes more difficult.
The breakdown for the programming languages that are part of Visual Studio are:
Framework | CLR | Language |
| | C# | VB | F# |
1.0 | 1.0.3705 | 1.0 | 7.0 | - |
1.1 | 1.1.4322 | 1.1 | 7.1 | - |
2.0 | 2.0.50727 | 2.0 | 8.0 | - |
3.0 | 2.0.50727 | 2.0 | 8.0 | - |
3.5 | 2.0.50727 | 3.0 | 9.0 | - |
4.0 | 4.0.30319 | 4.0 | 10.0 | 2.0 |