This language is part of the .NET framework that can be used to build applications on Windows and browsers. Recently, Microsoft has integrated open source Linux implementation named “Mono” into Visual Studio; thus, it is possible to write C# code that can be compiled for Linux systems.
Automatic Garbage Collection: although automatic memory management isn’t unique for high level programming languages, it’s an time saver as compared to lower level programming languages such as C++, and certainly not C.
Language-Integrated Query (LINQ) is added to .NET 3.5. This introduces a new type that represent strongly typed lambda expressions. This bridges the gap between the world of objects and the world of data. This applies to simplified operations on SQL databases, XML docs, ADO.NET datasets, and .NET collections.
Delegates reference type variable that are similar to C++ pointers to functions.
Standard Library
Assembly Versioning
Properties and Events
Easy-to-use Generics
Indexers
Conditional Compilation
Integration with Windows