Language Reference Summary and Version History

50.1 Statement Quick Reference

Dim, Const, Static, ReDim, Erase, Enum, Structure, Class, Module, Interface, Delegate, Event, Property, Operator, Namespace, Imports, Declare

If/ElseIf/Else, Select Case, For/Next, For Each, Do/Loop, While/End While, Exit, Continue, GoTo, Return, Stop, End

Try/Catch/When/Finally, Throw, On Error, Resume, Error Resources & sync Using, SyncLock, With

RaiseEvent, AddHandler, RemoveHandler, Handles, WithEvents Async, Await, Iterator, Yield

Public, Private, Protected, Friend, Protected Friend, Private Protected, Shared, Shadows, Overloads, Overridable, Overrides, NotOverridable, MustOverride, MustInherit, NotInheritable, Partial, ReadOnly, WriteOnly, Default, Widening, Narrowing, Optional, ParamArray, ByVal, ByRef

50.2 VB.NET Version History

VS 2002/2003,.NET 1.x VB.NET launch: OOP, exceptions, threads VS 2005,.NET 2.0

Generics, My, Using, Continue, operator overloading, partial types, IsNot, unsigned types VS 2008,.NET 3.5

LINQ, XML literals, lambdas, Option Infer, extension methods, anonymous types, nullable ? syntax, ternary If VS 2010,.NET 4

Implicit line continuation, auto-properties, collection initializers, multi-line/sub lambdas, variance VS 2012,.NET 4.5

Async/Await, iterators, caller info attributes, Global in namespaces

Roslyn, ?., NameOf, string interpolation, multi-line strings, read-only auto-properties, #Region anywhere, comments in line continuations

Tuples, binary literals, digit separators, ByRef returns (consume), inferred tuple names, Private Protected, leading digit separators

Comments after line continuation _,.NET Core 3 support VS 2019 16.9+ /.NET 5+

Consume init-only properties, ongoing compatibility