Strategy for converting a VB6 app to .NET

If it were me, I'd just rip the Band-Aid right off. I don’t see any benefit in having an in-between state [.NET Forms and COM-interop] for your application because it just adds unneeded complexity.


We have a VB6 application which is being ported to .NET either, and we use the COM-Interop strategy. All new features can be implemented in .NET, only the GUI-stuff remains VB; at the same time, we can develop a new GUI independently.

If you don't already know this, you can do COM Interop without using the registry (as this caused some problems for us) with Registration-Free COM Interop:

  • MSDN Documentation
  • Manifest-Creator (very useful!)

There's lots of advice on strategies for conversion.

  • Check out the other questions here tagged vb6-migration.
  • I highly recommend Microsoft's page about different conversion strategies.
  • Consider the commercial migration tools especially if you are short of developer time.
    • Mobilize.Net's upgrade companion (converts to c# and vb.net)
    • VBMigration partner (converts to vb.net)
    • and SELISE Phoenix, which I haven't heard of before, suggested in an edit (converts to c# from vb.net)