What Is The Future Of C#

C# is one of the most popular programming languages for Windows, Web, and mobile development. You can build C# Windows applications using WinForms, WPF, and UWP platforms. ASP.NET MVC and ASP.NET Core are two technologies used to build modern web applications. Mobile developers can use the C# language to build native iOS, Android, and Windows mobile apps using Xamarin and UWP platforms. TypeScript also adds a new dimension to Web and App development.

C#, as a language, can do a lot more. Today, you can build pretty much any kind of software using C# including data science, AI and machine learning, cloud, enterprise, and report-centric applications.

Since its early announcement in the year 2000, C# as a language has come a long way and the good thing is, C# is still fresh and evolving. Each year,  more features are being added and more improvements are being made. Learn more about C# language history here.

In recent versions, the focus of the language has been on writing safe and efficient code, giving developers more freedom, and writing less code; hence helping them become more productive.

The following table summarizes C# language versions and features.

VersionYearKey features introduced
1.0Jan 2002
1.2Oct 2003Modern, object-oriented, type safe, automatic memory management, versioning control
2.0Sept 2005Generics, partial classes, anonymous types, iterators, nullable types, static classes, delegate interface
3.0Aug 2007Implicit types, object and collection initializers, auto-implemented properties, extension methods, query and lambda expressions, expression trees, partial methods.
4.0April 2010Dynamic binding, named and optional arguments, Generic covariance and Contravariance, Embedded interop types
5.0June 2013Async methods, Caller info Attributes
6.0July 2015Roslyn (compiler-as-a-service), exception filters, Await in catch/finally block, auto property initializer, string interpolation, nameof operator, dictionary initializer
7.02016Tuples, pattern matching, record types, local functions, Async streams, out variables, deconstruction, digit separators, ref returns and locals, generalized async return types, expression bodied constructors and finalizers, expression bodies getters and setters, Throw as an expression
7.12017Async main, default literal expressions, inferred tuple element names
7.22017Reference semantics with value types, non-trailing named arguments, leading underscores in numeric literals, private protected access modifier
7.32017Ref local re-assignments, stackalloc initializers, indexing movable fixed buffers, custom fixed statements, improved overload candidates, tuple comparison, attribute on backing fields.

C# 8 is already on the roadmap now.

Watch this video to learn about 20 new features in C# 7.x and how to use them.

Microsoft has also announced the roadmap and the future plans for .NET Core 3.0. Check out What is the future of .NET Core to learn more.

Previous article - What is the Future of C#

More on C# - What Can C# Do For You