All guides

Engineering toolbox

.NET Frameworks and Packages

A curated list of .NET libraries and frameworks by category, from algorithms and APIs to testing, serialisation and UI.

Updated Sep 11, 202613 min read
dotnet
libraries
packages
csharp

A shortlist of .NET packages that have earned a place in real projects, grouped by what they do. It is a starting point for choosing a library, not an exhaustive index. Check each project's activity and licence before adopting it.

  • C# Algorithms - A C# plug-and-play class-library project of standard Data Structures and Algorithms. It contains 35+ Data
  • Design Patterns Library - Design pattern is a general repeatable solution to a commonly occurring problem in software design.
  • ASP.NET Web API - Framework that makes it easy to build HTTP services that reach a broad range of clients, including browsers and mobile devices
  • Fody - Extensible tool for weaving .NET assemblies.
  • Mono.Cecil - Cecil is a library to generate and inspect programs and libraries in the ECMA CIL form.
  • ASP.NET Identity - New membership system for ASP.NET applications
  • IdentityServer - Extensible OAuth2 and OpenID Connect provider framework.
  • OAuth - A very lightweight library for generating OAuth 1.0a signatures written in C#
  • MSBuild - The Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio
  • Runtime - Mono and CoreCLR .NET runtimes, as well as the standard library and some higher level components like System.Linq and System.Text.Json.
  • .NET Compiler Platform ("Roslyn") Analyzers - A number of Roslyn diagnostic analyzers initially developed to help flesh out the design and implementation of the static analysis APIs.
  • StyleCop - StyleCop analyzes C# source code to enforce a set of style and consistency rules
  • BenchmarkDotNet - Powerful .NET library for benchmarking.
  • SharpCompress - SharpCompress is a compression library for .NET/Mono/Silverlight/WP7 that can unrar, un7zip, unzip, untar unbzip2 and ungzip with forward-only reading and file random access APIs. Write support for zip/tar/bzip2/gzip are implemented
  • SharpZipLib - a Zip, GZip, Tar and BZip2 library written entirely in C# for the .NET platform
  • Azure DevOps - Software as a service (SaaS) platform from Microsoft that provides an end-to-end DevOps toolchain for developing and deploying software.
  • BouncyCastle - Together with the .Net System.Security.Cryptography, the reference implementation for cryptographic algorithms on the CLR.
  • LiteDB - A .NET NoSQL Document Store in a single data file - https://www.litedb.org
  • MySQL Connector - Connector/Net is a fully-managed ADO.NET driver for MySQL
  • Npgsql - .NET data provider for PostgreSQL
  • MongoDB - Official MongoDB C# driver
  • Storage.Net - Generic storage abstractions and implementations for popular cloud storage providers like Amazon S3, Azure Service Bus, Azure Event Hub, Azure Storage, Azure Data Lake Store and many others.
  • Oracle - provides fast data access from Microsoft .NET Core clients to Oracle databases.
  • [SqLite]
  • [SQL Server]
  • [CosmosDB]
  • [DB2]
  • NodaTime - Noda Time is an alternative date and time API for .NET. It helps you to think about your data more clearly, and express operations on that data more precisely. https://nodatime.org/
  • DateTimeExtensions - Common Date Time operations on the form of extensions to System.DateTime, including holidays and working days calculations on several culture locales.
  • ILSpy - ILSpy is the open-source .NET assembly browser and decompiler
  • DbUp - .NET library that helps you to deploy changes to SQL Server databases. It tracks which SQL scripts have been run already, and runs the change scripts that are needed to get your database up to date
  • Vortice.Windows - Cross platform .NET standard libraries for DirectX, WIC, Direct2D1, XInput, XAudio and X3DAudio
  • GhostDoc - GhostDoc is a Visual Studio extension for developers who need to Generate XML Comments from source code using customizable templates, maintain clean and up-to-date documentation, produce help documentation in multiple formats, use intelligent source code Spell Checker in Visual Studio. GhostDoc also helps automating the generation of clean, helpful documentation of your clean code, building it, and packaging it up all without human intervention.
  • Dotnet CLI - The cross-platform .NET Core command-line toolchain utility.
  • OpenTK - The Open Toolkit is an advanced, low-level C# library that wraps OpenGL, OpenCL and OpenAL
  • HandyControl - Contains some simple and commonly used WPF controls
  • QtSharp - Mono/.NET Bindings for Qt
  • Qml.Net - A cross-platform Qml/.NET integration for Mono/.NET/.NET Core
  • MahApps.Metro - Toolkit for creating Metro-styled WPF apps
  • DockPanelSuite - The Visual Studio inspired docking library for .NET WinForms
  • AvalonEdit - The WPF-based text editor component used in SharpDevelop
  • Gtk# - Gtk# is a Mono/.NET binding to the cross platform Gtk+ GUI toolkit and the foundation of most GUI apps built with Mono
  • Dragablz - Dragable, tearable WPF tab control (similar to Chrome) which supports layouts and is full themeable, including themese compatible with MahApps and Material Design.
  • Fluent.Ribbon - Fluent Ribbon Control Suite is a library that implements an Office- and Windows 8-like Ribbon for WPF.
  • Xamarin.Forms - Build native UIs for iOS, Android and Windows from a single, shared C# codebase.
  • Avalonia - A multi-platform .NET UI framework (formerly known as Perspex).
  • Modern UI for WPF - MUI - Set of controls and styles to convert WPF applications into a great looking Modern UI apps.
  • WinApi - A simple, direct, ultra-thin CLR library for high-performance Win32 Native Interop with automation, windowing, DirectX, OpenGL and Skia helpers.
  • Neutronium - Build .NET desktop applications using HTML, CSS, javascript and MVVM bindings such as with WPF.
  • AdonisUI - Lightweight UI toolkit for WPF applications offering classic but enhanced Windows visuals.
  • Windows UI Library - The Windows UI Library (WinUI) provides official native Microsoft UI controls and features for Windows UWP apps.
  • [AvalonEdit]
  • [Plow]
  • [SharpDX]
  • [MonoGame.Framework.WindowsDX]
  • [Dirkster.AvalonDock]
  • AngleSharp - Complete HTML5 DOM and CSS3 OM construction
  • HtmlAgilityPack - an agile HTML parser that builds a read/write DOM and supports plain XPath or XSLT
  • ImageSharp - Fully managed cross-platform library for processing of image files.
  • Magick.NET - .NET wrapper for the ImageMagick library.
  • OpenCvSharp - Cross platform wrapper of OpenCV for .NET Framework.
  • ResX Resource Manager - The most popular free tool to localize all kind of applications with resx-based resources.
  • Serilog - A no-nonsense logging library for the NoSQL era. Combines the best of traditional and structured diagnostic logging in an easy-to-use package.
  • CommonMark.NET - Implementation of CommonMark specification in C# for converting Markdown documents to HTML. Optimized for maximum performance and portability.
  • markdig - A fast, powerful, CommonMark compliant, extensible Markdown processor for .NET.
  • MailKit - A complete cross-platform mail stack including IMAP, POP3, SMTP, authentication and more. Built on top of MimeKit.
  • MimeKit - A cross-platform .NET MIME creation and parser library with support for S/MIME, PGP, TNEF and Unix mbox spools.
  • PreMailer.Net - C# library that moves your stylesheets to inline style attributes, for maximum compatibility with e-mail clients.
  • LibVLCSharp - Xamarin bindings for libvlc, the multimedia framework powering the VLC applications made by VideoLAN.
  • NAudio - Playback, decode and encode audio in a variety of file formats such as MP3, MP4, WAV, AIFF, Speex, etc.
  • Web Markup Minifier - .NET library that contains a set of markup minifiers. The objective of this project is to improve the performance of web applications by reducing the size of HTML, XHTML and XML code.
  • CsvHelper - Library to help reading and writing CSV files https://github.com/JoshClose/CsvHelper
  • Humanizer - Humanizer meets all your .NET needs for manipulating and displaying strings, enums, dates, times, timespans, numbers and quantities
  • LINQPad - a C#/VB/F# scratchpad that instantly executes any expression, statement block or program with rich output formatting and a wealth of features. Also lets you interactively query databases in LINQ. [$]
  • Polly - Express transient-exception-handling and resilience policies such as Retry, Wait-and-Retry, Circuit Breaker, and Bulkhead Isolation in a fluent manner. Fully thread-safe and full async support. (4.0 / 4.5 / .NET Core / .NET Standard / Xamarin).
  • MSBuild ILMerge task - MSBuild ILMerge task is a NuGet package allows you to use the famous ILMerge utility in automated builds and/or Visual Studio projects.
  • IpSet - tool to enumerate IpAddress and check if an IP address is contained by the defined range or set. Support both IPv4 and IPv6. Support CIDR notation.
  • ClosedXML - ClosedXML makes it easier for developers to create Excel 2007/2010 files
  • NPOI - This project is the .NET version of POI Java project at https://poi.apache.org/.
  • EPPlus - EPPlus is a .NET library that reads and writes Excel 2007/2010 files using the Open Office XML format (xlsx).
  • Open XML SDK - The Open XML SDK provides open-source libraries for working with Open XML Documents (DOCX, XLSX, and PPTX).
  • Entity Framework Core - Object-relational mapper that enables .NET developers to work with relational data using domain-specific objects
  • EntityFramework.Exceptions - Use typed Exceptions for Entity Framework Core when your SQL query violates database constraints in SqlServer, MySql, PostgreSQL or SQLite
  • Dapper - A simple object mapper for .NET by StackExchange
  • Dapper Extensions - Small library that complements Dapper by adding basic CRUD operations (Get, Insert, Update, Delete) for your POCOs
  • NuGet - The .NET package manager
  • BaGet - A cross-platform, lightweight NuGet and Symbol server
  • ITextSharp - iText is a PDF library that allows you to CREATE, ADAPT, INSPECT and MAINTAIN documents in the Portable Document Format (PDF)[$] [Free for OSS]
  • WkhtmlToPdf - C# wrapper around wkhtmltopdf console utility. Allow to generate preety PDF using HTML and CSS.
  • SSH.NET - A Secure Shell (SSH) library for .NET, optimized for parallelism. Provides SSH commands, SFTP/SCP uploads and downloads, and SOCKS4/SOCKS5/HTTP proxies.
  • SharpSnmpLib - An open source SNMP implementation for .NET/Mono/Xamarin. Versioin 1, 2c, and 3 are supported.
  • DNS - A library for parsing and serializing DNS messages. Includes a basic DNS client and server.
  • DnsClient.NET - A simple yet very powerful and high performant open source library for the .NET Framework to do DNS lookups.
  • PushSharp - A server-side library for sending Push Notifications to iOS, OSX, Android, Chrome, Windows Phone, Windows 8, Blackberry, and Amazon devices.
  • SqlKata - Elegant SQL query builder, that supports complex queries, joins, sub queries, nested where conditions, vendor engine targets and more
  • Rebus - Rebus is a lean service bus implementation for .NET, similar in nature to NServiceBus and MassTransit, only leaner
  • QuartzNet - Quartz Enterprise Scheduler .NET
  • AWS SDK - The AWS SDK for .NET enables .NET developers to easily work with Amazon Web Services
  • Azure PowerShell - A set of PowerShell cmdlets for developers and administrators to develop, deploy and manage Microsoft Azure applications
  • Elasticsearch .NET - Elasticsearch.Net & NEST
  • Lucene.net - Lucene.Net is a port of the Lucene search engine library, written in C# and targeted at .NET runtime users
  • Protobuf.NET - Protocol buffers is the name of the binary serialization format used by Google for much of their data communications
  • Json.NET - Popular high-performance JSON framework for .NET
  • Utf8Json - Fast and Zero Allocation JSON Serializer for C#(.NET, .NET Core, Unity and Xamarin), this serializer write/read directly to UTF8 binary so boostup performance.
  • YamlDotNet - provides low level parsing and emitting of YAML as well as a high level object model similar to XmlDocument. A serialization library is also included that allows to read and write objects from and to YAML streams
  • Stateless - Create state machines and lightweight state machine-based workflows directly in .NET code
  • RazorEngine - Open source templating engine based on Microsoft's Razor parsing engine
  • Moq - The most popular and friendly mocking framework for .NET
  • xUnit.net - A free, open source, community-focused unit testing tool for the .NET Framework.
  • Fluent Assertions - A set of .NET extension methods that allow you to more naturally specify the expected outcome of a TDD or BDD-style test
  • Playwrite - Playwright for .NET is the official language port of Playwright, the library to automate Chromium, Firefox and WebKit with a single API. Playwright is built to enable cross-browser web automation that is ever-green, capable, reliable and fast.
  • [Bogus]
  • Fiddler - The free web debugging proxy for any browser, system or platform
  • Open Live Writer - Blog writer which integrated with WordPress, Blogger, et. al. Open Live Writer makes it easy to write, preview, and post to your blog.
  • Web Essentials - Web Essentials extends Visual Studio with lots of new features that web developers have been missing for many years
  • VsVIM - VIM in Visual Studio
  • Nuget Package Manager - NuGet is the package manager for the Microsoft development platform including .NET
  • Resharper - Developer Productivity Tool for Visual Studio [$]
  • Refactoring Essentials - Open source extension for C# and VB.NET refactorings, including code best practice analyzers.
  • Git Diff Margin - Displays live Git changes of the currently edited file on Visual Studio margin and scroll bar
  • Productivity Power Tools - A set of extensions to Visual Studio Professional (and above) which improves developer productivity.
  • VSColorOutput - Color highlighting for Build, Find and Debug output windows. Custom match patterns and colors can be added.
  • CodeLineage - Easy access to a cumulative diff view between file revisions (supports svn, git, mercurial, perforce).
  • Roslynator - A collection of 500+ analyzers, refactorings and fixes for C#, powered by Roslyn
  • CefSharp - HTML5, CSS3 and JS web browser powered by Chromium, for WinForms and WPF
  • ASP.NET MVC - ASP.NET is a free web framework for building great web sites and applications
  • Kestrel - A web server for ASP.NET Core based on libuv
  • SignalR - Library for ASP.NET developers that makes it incredibly simple to add real-time web functionality to your applications
  • TopShelf - An easy service hosting framework for building Windows services using .NET
  • Data Grid Extensions - Modular extensions for the WPF DataGrid control, like filtering, additional column events, extended star-size column behavior, and more...
  • Extended WPF Toolkitβ„’ - A rich collection of controls, components and utilities for creating WPF applications
  • WPF - WPF is a .NET Core UI framework for building Windows desktop applications.

ResourcesπŸ”—

  • Discover .NET - Awesome .NET open source and community resources.
  • NuGet Trends - Check out NuGet packages adoption and what's trending on NuGet.
  • Weekly C# Digest - Weekly email newsletter with manually curated top 5 links from the .NET community.
.NET Frameworks and Packages | Push Manifesto Β· Push Manifesto