Base Class Library (.NET Core & .NET 5+)
Explore fundamental types, algorithms, and application infrastructure.
- System Namespace Provides fundamental classes and base types used by all .NET applications.
- System.Collections Namespace Defines interfaces and classes that define collections of objects.
- System.IO Namespace Provides types that allow reading and writing files and data streams.
- System.Threading Namespace Supports the creation and management of threads.
- System.Reflection Namespace Provides classes and interfaces that enable reflection to examine assemblies, modules, and types.
Windows Forms
Build rich, interactive desktop applications for Windows.
- System.Windows.Forms Namespace Provides classes that create Windows-based applications.
- System.Drawing Namespace Provides access to basic graphics functionality.
Windows Presentation Foundation (WPF)
Create visually stunning and adaptive user interfaces.
- System.Windows Namespace Defines the core types and classes for WPF.
- System.Windows.Controls Namespace Contains classes for UI elements like buttons, text boxes, and layouts.
- System.Windows.Media Namespace Provides classes for graphics, imaging, and animation.
ASP.NET (Core)
Develop modern, cloud-ready web applications and services.
- Microsoft.AspNetCore.Mvc Namespace Classes for building web applications with the Model-View-Controller (MVC) pattern.
- Microsoft.AspNetCore.Hosting Namespace Classes for configuring and running ASP.NET Core applications.
- Microsoft.AspNetCore.Http Namespace Classes for handling HTTP requests and responses.
Data Access
Connect to and interact with various data sources.
- System.Data Namespace Provides classes for working with data.
- System.Data.SqlClient Namespace Classes for connecting to and interacting with Microsoft SQL Server.
- Entity Framework Core Modern data access technology for .NET. (Links to external docs)
Networking
Build network-enabled applications.
- System.Net Namespace Provides classes for network programming.
- System.Net.Http Namespace Provides classes for sending HTTP requests.
- System.Net.Sockets Namespace Provides classes for low-level socket programming.
Example: String Manipulation
A simple example using the System.String class.
using System;
public class Example
{
public static void Main(string[] args)
{
string greeting = "Hello, World!";
Console.WriteLine(greeting.ToUpper()); // Output: HELLO, WORLD!
Console.WriteLine(greeting.Contains("World")); // Output: True
}
}