C#
Definition
C# (pronounced “C sharp”) is a modern, multi-paradigm programming language developed by Microsoft
- License: ECMA/ISO standard; Microsoft’s implementation (Roslyn) is MIT licensed
- Runtime: .NET (cross-platform, open-source) / .NET Framework (Windows-only)
- Creator: Anders Hejlsberg (also created Turbo Pascal, Delphi)
- First released: 2002 with .NET Framework 1.0
Language Features
- Type system: Statically typed with type inference (var)
- Garbage collection: Automatic memory management
- LINQ: Language-Integrated Query for database and data source access
- Async/await: Native asynchronous programming support
- Delegates and events: Type-safe function pointers
- Properties, indexers, attributes: Rich class member support
Major Versions
| Version |
Year |
Key Features |
| C# 1.0 |
2002 |
Base language features |
| C# 2.0 |
2005 |
Generics, partial classes, nullable types |
| C# 3.0 |
2007 |
LINQ, lambda expressions, expression-trees |
| C# 4.0 |
2010 |
Dynamic typing, optional parameters |
| C# 5.0 |
2012 |
async/await |
| C# 6.0 |
2015 |
Null-conditional operators, using-statements |
| C# 7.0-7.3 |
2017 |
Tuples, pattern matching, ref returns |
| C# 8.0-9.0 |
2019-2020 |
Nullable reference types, records, patterns |
| C# 10-13 |
2021-2024 |
File-scoped namespaces, records, raw strings, global-using |
Runtime: .NET
| Component |
Description |
| .NET Core / .NET 5+ |
Cross-platform, open-source, unified platform |
| .NET Framework |
Windows-only, legacy |
| Mono |
Open-source .NET implementation for mobile and game engines |
| Roslyn |
Open-source C# compiler platform (MIT license) |
Use Cases
- Enterprise desktop applications (WPF, WinForms)
- Web applications (ASP.NET Core)
- Game development (Unity engine)
- Mobile applications (Xamarin, .NET MAUI)
- Cloud services (Azure integration)