C# language documentation
The C# guide contains articles, tutorials, and code samples to help you get started with C# and the
.NET platform. Experienced developers can learn about new features in the What's new section.
Experienced developers can learn details of language behavior from the reference and language
specifications.
GET STARTED CONCEPT W H AT ' S N E W
Tour of C# C# What's new in
fundamentals C#
VIDEO TRAINING TRAINING
Learn C# video C# learning Foundational C#
series paths Certification -
freeCodeCamp
Learn to program with C#
Major concepts and features of the C# language
Get started with C# C# fundamentals
A tour of C# Type system
Beginner C# tutorials Object oriented programming
Try C# in your browser Functional techniques
Inside a C# program Exceptions
C# for beginners video series Coding style
Foundational C# Certification C# language strategy
Language concepts Advanced language concepts
Programming concepts Reflection and attributes
LINQ Interface implementations
Asynchronous programming Expression trees
Native interoperability
Performance engineering
.NET compiler platform (roslyn) SDK
C# reference
Read C# language reference material, and the C# language specifications. The C# reference provides an
informative reference for the C# language. The C# language specification is the normative reference for
the C# language. It's the official source for C# language syntax and semantics. Feature specifications
document features not yet incorporated in the standard.
Language reference C# Language reference C# specification
The C# language reference Unsafe code and compiler The official specification for the
provides an informative options C# language
explanation of the C# language.
i Special attributes i Standard and specifications
i C# language reference
i Unsafe code i The specification process
i Built-in types
i Preprocessor directives i C# draft standard
i Keywords
i Compiler options i Feature specifications
i Operators
i Statements
i Special characters
i Documentation comments
Build C# apps with the Visual Studio family
Choose Visual Studio or Visual Studio Code to build your C# applications.
Visual Studio Visual Studio Code
Create your application
You can choose web, mobile, desktop, gaming, IoT, and more.
Web Mobile and Desktop Microservices
ASP.NET Core tutorials Windows Presentation Dapr for .NET developers
Foundation (.NET 5+)
What is ASP.NET Core? Cloud native .NET apps
Windows Forms (.NET 5+)
ASP.NET Core in Visual Studio Serverless apps with Azure
.NET Multi-platform App UI
ASP.NET MVC apps in Windows Architecture for containerized
(.NET MAUI)
containers .NET apps
Develop mobile apps with Azure
Blazor: Interactive client-side Deploy a Worker Service to
web UI with .NET Windows Presentation Azure
Foundation (.NET Framework)
F# for web development
Windows Forms (.NET
Framework)
Cloud Machine learning and AI Game development
Azure for .NET developers Build custom AI solutions with Game development with Visual
ML.NET Studio
.NET Aspire (Preview)
Azure Cognitive Services Learn how to use CRYENGINE to
Migrate on-premises .NET web
build games with C#
apps or services Azure Machine Learning
Build games with C# using the
Azure services for .NET F# for machine learning
MonoGame library
developers
Learn how to use Unity to build
Azure SDK for .NET
2D and 3D games with C#
Deploy Azure resources with F#
Internet of things (IoT)
.NET IoT libraries
Get started in 5 minutes
Blink an LED
.NET IoT 101 video series
API and language reference
Search the .NET API and language reference documentation.
.NET API reference .NET Framework API ASP.NET Core API reference
API reference documentation reference API reference documentation
for .NET API reference documentation for ASP.NET Core
for .NET Framework
ML.NET API reference .NET Platform Extensions
API reference documentation API reference
for ML.NET API reference documentation
for .NET Platform Extensions
Are you interested in contributing to the .NET docs? For more information, see our contributor guide.