Well, here are my thoughts on the issue.
As far as C#... I'm just undecided. I read MSDN mag, and nearly everything they put in there for ASP.NET is in C#. So that makes me want to go that route. My first language was C++, but I didn't get very deep into it, and learned OO principles in an academic language called Eifel. Got a little bit of JAVA treatment right before graduation, and then it's all been VB and VBScript since then. I was horrified at first, as VB has always been a crippled language, but that's what I had to use, so I adapted.
Now that I've been using it, I have grown to like it, and now, with .NET, VB is a full fledged object oriented language (about as close as anything else out there). One of the main principles of .NET is to have software judged by the design, rather than the syntax. Now there's an idea. And I have to say I'm quite impressed so far in the little bit of dabbing I've been doing in the technology.
It seems just as powerful as C# or C++, and so I'm sort of leaning towards VB, just because all of my practical "real world" experience has been in this language. I'm very comfortable with the syntax, and am flat out tickled with the new features.
Again, though, I'm not 100% either way. I'm going to a conference next month and I'm going to lick my finger and stick it in the wind with the developers down there to get a feel for what others are going to do. Since that's how things are really decided, anyway.
The few user-groups I've attended seem to be split about 50/50 so far.
Boy, that was a long winded way to say "I dunno", wasn't it?
So on to the other question of what I think you should do. Eh... as you know, I'm no seasoned veteran of IT (or at least I think you know that, or you do now), and I would not claim to have all the answers.
That being said, I honestly would go the .NET route, since .NET treats COM deployment differently that ASP classic does. Gone are the days of compiling a .dll, and registering it everywhere you want to use it. You now add your class to the plethera of other classes that are installed with the framework, and simply inherit them into your pages, just like you would any other object. Very very cool, and much much better. It's more seamless now.
Additionally, debugging a classic COM object was a bit of a hassle. The best way I could ever figure out to do it was to start the project in a standard .exe, abstracting all the future functionality of the object into a single class, and then writing a little form to simulate input, and return output... and of course, the module to simulate the ASP code that would instantiate and manipulate the object at run-time.
Bye-bye.
Now, as long as you know where the source code is, and can tell your brand new wicked-cool .NET IDE where it is (EVEN IF IT'S ON A REMOTE MACHINE!), then you start your debugging in your aspx file, and when you invoke a method of your object, the IDE steps right over into your VB (or C# or whatever) source code for the COMPILED object, and you are well on your way to debugging in record time.
Oh, and did I mention you can debug SQL Server SPROCS in the same manner?
Think about that... those are compiled binary objects out there, and the thing is smart enough to go grab the source code, and step through it. Heck, ASP is now compiled, too, for that matter.
Oh, man... I could just go on and on and on and on about how sweet this new stuff is. I guess I already have, eh?
So, yea, I really think you ought not to monkey with the old stuff, and just move on. There are enough differences that IMHO, you'd be wasting your time learning the old stuff.
So... Atlanta, eh? Just don't try to get my next big job, OK. ;-)
be good,
paul