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 2.0 9.0 - 4.0 4.0.30319 4.0 10.0 2.0 Technorati Tags: Visual Studio,.NET