Since AutoCAD adopted the .NET technology, it has been always a wonder which Visual Studio should be used and at which .NET Framework Runtime should be targeted inside its IDE for a particular AutoCAD version. In this article, we are going to address it.
Things are clear if a table is presented like this:
AutoCAD external AutoCAD internal .NET Framework Runtime Visual Studio
2005 16.1 1.0 2002
2006 16.2 1.1 SP1 2003
2007 17.0 2.0 2005/2008/2010/2012
2008 17.1 2.0 2005/2008/2010/2012
2009 17.2 3.0 2008/2010/2012
2010 18.0 3.5 2008/2010/2012
2011 18.1 3.5 2008/2010/2012
2012 18.2 4.0 2010/2012
2013 19.0 4.0 2010/2012
2014 19.1 4.0 2010/2012
The external version also means the display version on the cover of AutoCAD packages, CDs or something like that. Users generally use this version for discussions, bug reporting or something like that. The internal version is something hiding deep in registry, assembly attributes, or something like that. Developers should know it well enough so as to seek some sensitive information from registry, trouble shoot incompatible problems between different versions, or something like that.
As far as Visual Studio versions are concerned, generally each Visual Studio and its extension supports only one particular runtime version before the version 2008. Since Visual Studio 2008, multiple runtime supporting and targeting are possible. For instance, we can target either .NET Framework Runtime 2.0, 3.0, or 3.5 in .NET projects using Visual Studio 2008 so we can use this single IDE for .NET developments of many AutoCAD versions, 2007, 2008, 2009, 2010, and 2011, which is great convenient for developers.
And Visual Studio 2010 continues this good strategy, besides supporting all the three versions of .NET Framework Runtime that the previous version does, it also supports the latest .NET Framework Runtime 4.0 for sure. Visual Studio 2012 follows the same good trend.
The leading edge AutoCAD .NET Addin Wizard (AcadNetAddinWizard) takes care of these automatically in a single installation and user interface!