The .NET languages and runtime environment are very different from VB6, for example with VB6 and .NET differ in regards to critical details like null handling, variants, type conversions, date and time variables, color variables, string indexing, object lifetime, and the various services provided by intrinsic functions and objects. A migration support library helps a code designed to run in VB6 to work correctly when it is re-implemented for .NET. However, using a migration support library is an option, not a requirement. If you decide to not use a migration support library, you will usually have to rework some of the application code to fit the runtime conventions of the .NET platform. The amount of work required to do this rework depends on the how the legacy code uses on VB6 language features and how you intend to make changes for .NET.
...