Other meanings of Visual Basic
Programming language
Visual Basic (.NET) is a general-purpose programming language for the .NET platform, designed to make application development readable and productive while providing access to the same runtime, libraries, and tools used by other .NET languages.1 It is distinct from classic Visual Basic, although both emphasize event-driven programming and approachable syntax.
Visual Basic (.NET) is a compiled, statically typed language built for the .NET ecosystem. It appeared with the first release of the .NET Framework and replaced classic Visual Basic as Microsoft's principal Visual Basic implementation for contemporary application development.1 The language retained familiar features such as readable keywords, optional explicit type declarations, and event handlers, but adopted the Common Language Runtime, managed memory, namespaces, structured exception handling, and object-oriented inheritance.
Its syntax is intentionally verbose compared with languages such as C#, which can make business rules and interface code accessible to newcomers. That readability does not prevent advanced programming: Visual Basic (.NET) supports generics, delegates, lambda expressions, asynchronous programming, reflection, and interoperability with other .NET languages. Existing classic Visual Basic code generally requires porting rather than direct compilation because the language, runtime, and standard libraries changed substantially.
Visual Basic (.NET) programs compile into intermediate language and execute under the .NET runtime rather than directly on a particular processor. The runtime supplies services such as garbage collection, exception handling, type safety, reflection, and just-in-time compilation.2 Assemblies package compiled code and metadata, allowing Visual Basic components to use libraries written in C#, F#, or other .NET languages.
Its type system includes classes, structures, interfaces, enumerations, properties, events, and attributes. Options such as Option Strict and Option Explicit let projects control implicit conversions and undeclared variables; enabling them generally exposes errors earlier. The language also provides Async and Await, structured exception handling through Try...Catch, and query expressions based on Language Integrated Query (LINQ). The open language specification records the syntax and semantic rules, while compiler behavior is implemented in the Roslyn compiler platform.4
Visual Basic (.NET) is used most visibly for Windows desktop software, internal business tools, automation utilities, teaching, and maintenance of long-lived .NET applications. Visual Studio supplies project templates, a visual designer, debugging, testing integrations, NuGet package management, and designer support for Windows Forms and WPF.1
The language can also target console programs, class libraries, services, and web-related components through the wider .NET platform. It can call APIs exposed by ASP.NET, database providers, file systems, networking libraries, and third-party packages; the language itself does not limit an application to a visual interface. Modern .NET is cross-platform, but practical Visual Basic workloads remain especially associated with Windows desktop and existing enterprise code, since some Windows-specific frameworks and designers are not cross-platform.5
Visual Basic (.NET) has a deliberately conservative evolution policy: Microsoft has emphasized compatibility and stability rather than pursuing frequent new language features.6 This makes it attractive for organizations that must preserve large codebases, but it also means that newer .NET capabilities may appear first in C# documentation or examples.
The language includes several features that are easy to overlook. My provides simplified access to common application, computer, user, and network services; XML literals allow XML to be written directly in source code; and late binding can support flexible COM or reflection-based integration when strict typing is not practical. Visual Basic projects can consume modern .NET libraries even when those libraries were authored in another language, because interoperability occurs through the shared runtime and Common Language Specification conventions.2 These facilities explain its continuing role in migration, automation, and line-of-business software rather than only in beginner examples.
Visual Basic (.NET) denotes the .NET-era language and should not be conflated with classic Visual Basic or VBA.
Help improve the encyclopedia. Reports go straight to the site manager.