Introduction to C# (C Sharp)

C# is the object-oriented and type-safe programming language that enables programmers to build enterprise-scale applications using Microsoft .Net platform.

C# was created by Anders Hejlsberg, Scot Wiltamuth, and Peter Golde and is defined by the standard (European Computers Manufacturer’s Association) ECMA-334. C# supports XML and SOAP and has access to the .NET class library. C# is similar in syntax to both C++ and Java and is considered by Microsoft as the natural evolution of the C and C++ languages.

Both C# and Java have some common advanced features such as automatic garbage collection and initially compiling to an intermediate language. C# first compiles the code to Microsoft Intermediate Language (MSIL) and Java first compiles the code to bytecode. Because C# supports .Net Framework, the Common Language Runtime (CLR) engine is used to compile the program code to MSIL and then “just-in-time” to the native code. Instead, Java uses Java Virtual Machine (JVM) to compiles the program code to Java bytecode and then interprets it to the native code.

When it comes to C++, the difference is not very deep but still there are some significant changes in C#. C# does not contain header files that mean code can be written inline. Moreover, the ‘plumbing’ of C# types is different from that of C++ types. C# types are derived from the ‘object’ type. In addition there is no concept of multiple class inheritance in C#. C# is case sensitive, therefore, you will get compiler errors when you write ‘console’ instead of ‘Console’.

C# support two kinds of types: value types and reference types. Value types directly contain the data of the variables but reference types store references to objects. A few examples of value types include char type, int type, float type, enum type, and struct type and a few examples of reference types include class types, delegate types, array types, and interface types.

FREE Subscription

Subscribe to our mailing list and receive new articles
through email. Keep yourself updated with latest
developments in the industry.


Note : We never rent, trade, or sell my email lists to
anyone. We assure that your privacy is respected
and protected.

Visit .NET Programming Tutorial Homepage


Recommended Resource

| How do you implement Observer Design Pattern in .NET? | Introduction to C# (C Sharp)|Debugging in ASP.NET| How do you pass data between different Tiers in .NET Architecture? | How is Classic ADO different from ADO.NET? | How is Dataadapter useful in ADO.NET? | How is Datareader different from Dataset in ADO.NET? | How is .NET Application Development different from Traditional Development? | How is HashTable different from ArrayList in .NET? | How is Inheritance achieved in C#? | How is new keyword different from override keyword during inheritance in .NET? | How is String class different from StringBuilder class in .NET? | Illustrate ADO.NET Architecture | Illustrate the importance of Server.Transfer and Response.Redirect in .NET? | Mention the different objects available in Dataset of ADO.NET | Mention the usage of Connection Object in ADO.NET | What are the commonly used methods of Dataadapter in ADO.NET? | What are the different Behavioral Design Patterns that can be used in .NET Architecture? | What are the different Creational Design Patterns that can be used in .NET Architecture? | What are the different Structural Design Patterns that can be used in .NET Architecture? | What are the methods provided by Command Objects in ADO.NET? | What is Internal Access Modifier in C#? |

“Amazon and the Amazon logo are trademarks of, Inc. or its affiliates.”

| Privacy Policy for | Disclosure | Contact |

Copyright - © 2004 - 2023 - All Rights Reserved.