C# Introduction

Here we will learn the basics of c# programming language; those are what is c#, overview of c# programming, features of c# programming, and history of c# programming.

What is the C# Programming Language?

C# (pronounced as “C Sharp”) is a simple, modern, object-oriented, and type-safe programming language. C# language has its roots in C languages such as C, C++, and it is mostly similar to Java programming.


C# Programming language will allow developers to build a variety of secure and robust applications such as windows applications, web applications, database applications, etc., which will run on the .NET Framework.


C# programming language has been built on .NET Framework to run the c# applications. We are required to install a .NET Framework component on our machines.


.NET Framework is a development platform to build apps for windows, web, azure, etc., by using programming languages such as C#, F#, and Visual Basic. It consists of two major components, such as Common Language Runtime (CLR), an execution engine that handles running apps, and .NET Framework Class Library, which provides a library of tested and reusable code that developers can use in their applications.

Overview of C#

  • C# is an object-oriented programming language, and it supports the concepts of encapsulation, abstraction, polymorphism, etc.
  • In c#, all the variables, methods, and application entry points are encapsulated within the class definitions.
  • C# is developed specifically for the .NET Framework, and it enables programmers to migrate from C/C++ and Java easily.
  • C# is a fully Event-driven and visual programming language.
  • Microsoft provided an IDE (Integrated Development Environment) tool called Visual Studio to implement c# programs easily.

Features of C#

C# contains various features similar to other programming languages such as c c++ and Java. There are some additional features in C# that make it different from other languages.


  • C# is a modern programming language, and it is very powerful and simple for building applications.
  • C# is useful in developing windows, web, and device applications.
  • C# provides automatic memory management by clearing unused objects.
  • C# is a type-safe programming language, and it makes it impossible to perform unchecked type casts.
  • C# provides a structured and extensible approach for error detection and recovery.
  • C# is a structure-oriented programming language, and the compilation, and execution of c# applications are faster due to automatic scalability.

History of C#

The C# programming language has been implemented by Anders Hejlsberj, an employee of Microsoft. The C# programming language's initial release is in 2002 with .NET Framework 1.0, and it’s more like Java programming.


The following table lists c# programming language evaluation with multiple features along with .NET Framework and visual studio.


VersionYear.NET FrameworkVisual StudioFeatures
C# 1.0 2002 1.0 / 1.1 Visual Studio 2002 Basic Features
C# 2.0 2005 2.0 Visual Studio 2005
  • Generics
  • Partial types
  • Anonymous methods
  • Nullable types
  • Iterators
  • Covariance and contravariance
C# 3.0 2007 3.0 / 3.5 Visual Studio 2008
  • Auto implemented properties
  • Anonymous types
  • Query expressions
  • Lambda expression
  • Expression trees
  • Extension methods
C# 4.0 2010 4.0 Visual Studio 2010
  • Dynamic binding
  • Named/optional arguments
  • Generic covariant and contravariant
  • Embedded interop types
C# 5.0 2012 4.5 Visual Studio 2012 / 13
  • Asynchronous members
  • Caller info attributes
C# 6.0 2015 4.6 Visual Studio 2015
  • Static imports
  • Exception filters
  • Property initializers
  • Expression bodied members
  • Null propagator
  • String interpolation
  • nameof operator
  • Dictionary initializer
C# 7.0 2017 .NET Core Visual Studio 2017
  • Out variables
  • Tuples and deconstruction
  • Pattern matching
  • Local functions
  • Expanded expression bodied members
  • Ref locals and returns