Dear DEVR4402,
Unfortunately this is a known limitation using .NET. When we started to support .NET API (AutoCAD .NET back in 2007 or so), we had this topics. To have apps unloadable, we will need to load it in a separate application domain. This article will probably gives to an overview.
http://through-the-interface.typepad.com/through_the_interface/2008/09/tired-of-not-be.html
I'm not sure if the same approach works with .NET, but some people seems to make it work. If you are interested, you may want to take a look at discussion like this one:
http://forums.autodesk.com/t5/NET/NET-RELOAD-Utility-for-Visual-Studio-Download-Here/td-p/3185104/hi...
With Revit, we have so-called AppManager, which takes care of app domain and you can run from "External Tools" pull down menu. We have that because we had additional overhead of creating add-in manifest to load a command, which was tadious. (in AutoCAD, it is easy - you run netload then choose a dll.) But it turned out to be helpful for debugging purposes as well.
Anyway, maybe I will try to put a wish for a similiar tool. In a mean time, if somebody can make a similiar tool and make it avilable from our store, that will be cool 😉
Mikako Harada
Developer Technical Services