This article is more than 1 year old
Microsoft throws a bone to those unable to leave the past behind: .NET 5 support on the way for Visual Basic
But you should really be looking at migrating to C#
Microsoft giveth and Microsoft taketh away as the Windows giant announced support for Visual Basic in its upcoming .NET 5.0
At first glance it seems that Microsoft has listened and those lucky millions still supporting all that legacy code will be delighted to hear that with .NET 5.0, Visual Basic will support Class Library, Console, Windows Forms, WPF Worker Service and the ASP.NET Core Web API.
There is, of course, a catch. Microsoft said: "Future features of .NET Core that require language changes may not be supported in Visual Basic."
The reason for this, according to Microsoft, is that the language "has been stable for a very long time", although for "stable" we'd substitute "neglected" since C# has very much nabbed the limelight at Redmond after its release 20 years ago.
Though Visual Basic evolved into Visual Basic.NET, the language has not kept pace with C#, which regularly charts above its venerable stablemate in lists of what developers like to use. A glimpse at Microsoft's own recent developer documentation has the majority of examples in C#.
"Going forward we do not plan to evolve Visual Basic as a language," Microsoft said, before suggesting that developers using functionality not supported in .NET Core might like to stay on the ageing .NET Framework. Otherwise a migration path to the new open-source world has now opened up.
The future of Visual Basic, according to Microsoft, will include both .NET Framework and .NET Core but will "focus on stability". And you can be sure that any new toys will likely have a C# tinge to them.
Its longevity has meant there are many, many lines of Visual Basic code out in the world and Visual Studio has continued to be polished, with Visual Basic receiving IntelliCode support.
While today's announcement may have bought a little more time for Visual Basic devotees worried about using the language with the latest and greatest open-source frameworks, a migration to C# or elsewhere really needs to be somewhere on the development roadmap. ®