Browse free open source C# Libraries and projects below. Use the toggles on the left to filter open source C# Libraries by OS, license, language, programming language, and project status.

  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • $300 in Free Credit Towards Top Cloud Services Icon
    $300 in Free Credit Towards Top Cloud Services

    Build VMs, containers, AI, databases, storage—all in one place.

    Start your project in minutes. After credits run out, 20+ products include free monthly usage. Only pay when you're ready to scale.
    Get Started
  • 1
    FluentValidation

    FluentValidation

    .NET validation library for building strongly-typed validation rules

    FluentValidation is a popular .NET library offering a fluent, expressive interface for building strongly-typed validation rules. It supports modern .NET runtimes including .NET 8+, and integrates smoothly into .NET Core, Blazor, and other ecosystems. FluentValidation has adopted the Code of Conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct. A validation library for .NET that uses a fluent interface and lambda expressions for building strongly-typed validation rules.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 2
    MudBlazor

    MudBlazor

    Do more with Blazor, utilizing CSS and keeping Javascript to a minimum

    Trusted by thousands of users, from hobby developers to large enterprises. Use MudBlazor to rapidly build amazing web applications without leaving your loved C# language and toolchain. We bring together everything that's required to build amazing Blazor applications that scale from desktop to mobile. Apart from the library itself we also provide templates, a learning platform, theme manager, demo and example projects as well as an online code editor integrated with our documentation and issue tracking. With more to come. We help companies build amazing apps in record time and let them focus on their business instead of buttons, MudBlazor is battle-tested and one of the fastest-improving platforms, and much more. We started MudBlazor with a simple promise, to empower the developer and fully take advantage of what Blazor offers. With MudBlazor you can create exceptional apps without the burden of mastering HTML, CSS and JS and focus your skillset on C#.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 3
    NetTopologySuite

    NetTopologySuite

    A .NET GIS solution that is fast and reliable for the .NET platform.

    A .NET GIS solution that is fast and reliable for the .NET platform. NetTopologySuite is a direct port of all the functionalities offered by JTS Topology Suite: NTS exposes JTS in a '.NET way', for example using Properties, Indexers, etc. The JTS Topology Suite is an API for modeling and manipulating 2-dimensional linear geometry. It provides numerous geometric predicates and functions. JTS conforms to the Simple Features Specification for SQL published by the Open GIS Consortium.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 4
    OxyPlot

    OxyPlot

    A cross-platform plotting library for .NET

    OxyPlot is a cross-platform plotting library for .NET. The code is licensed under the MIT license. This is a very permissive and corporate-friendly license. See open source and tl;dr for more details. The core library is a Portable Class Library that can be used on different platforms. Custom controls are implemented for WPF, Windows 8, Windows Phone, Windows Phone Silverlight, Windows Forms, Silverlight, GTK#, Xwt, Xamarin.iOS, Xamarin.Android, Xamarin.Forms and Xamarin.Mac. OxyPlot contains many different types of axes and series. If you need some functionality that is not included in the library, you can also create a derived class and override the rendering implementation. Make sure you reference and initialize the OxyPlot platform renderers, otherwise you will see nothing. The latest pre-release packages are pushed by AppVeyor CI to myget.org. To install these packages, set the myget.org package source https://www.myget.org/F/oxyplot and remember the "-pre" flag.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Forever Free Full-Stack Observability | Grafana Cloud Icon
    Forever Free Full-Stack Observability | Grafana Cloud

    Our generous forever free tier includes the full platform, including the AI Assistant, for 3 users with 10k metrics, 50GB logs, and 50GB traces.

    Built on open standards like Prometheus and OpenTelemetry, Grafana Cloud includes Kubernetes Monitoring, Application Observability, Incident Response, plus the AI-powered Grafana Assistant. Get started with our generous free tier today.
    Create free account
  • 5
    QuestPDF

    QuestPDF

    A library that can help you with generating PDF documents

    Quickly design and generate PDF documents with an open-source, modern, and battle-tested C# library. Forget about limitations, feel confident, enjoy your task and efficiently deliver professional products. QuestPDF is a progressive library that can help you with generating PDF documents in your .NET application by offering a friendly, discoverable and predictable C# fluent API. Do you believe that creating a complete invoice document can take less than 200 lines of code? We have prepared for you a step-by-step instruction that shows every detail of this implementation and describes the best patterns and practices. This library is created specifically for designing and arranging document layouts, with full paging support. Alternative solutions, such as HTML-based converters, are not designed for this purpose and therefore are often unpredictable and do not produce desired results.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 6
    SFML.Net

    SFML.Net

    Official binding of SFML for .Net languages

    SFML.Net is the official .NET binding for the Simple and Fast Multimedia Library (SFML), providing C# developers with access to a powerful multimedia and game development framework. It wraps SFML’s C++ API into a user-friendly .NET interface, making it easy to build 2D games, multimedia apps, and simulations with graphics, sound, windowing, and input support. SFML.Net keeps the design idiomatic to C#, maintaining SFML's performance and portability while providing seamless integration with .NET languages like C# and F#.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 7
    Windows UI Library

    Windows UI Library

    Windows 10 native controls and Fluent styles for your applications

    WinUI is a user interface layer that contains modern controls and styles for building Windows apps. As the native UI layer in Windows it embodies Fluent Design, giving each Windows app the polished feel that customers expect. WinUI 2 is a library of controls that provides official native Microsoft UI controls and features for Windows UWP apps. WinUI 2 can be used in any Windows 10 UWP XAML app, or in a Xamarin.Forms app running on Windows 10 using native view embedding. WinUI 3 is the next generation of the WinUI framework. It dramatically expands WinUI into a full UX framework, making WinUI available for all types of Windows apps, from Win32 to UWP, for use as the UI layer. You can build new Windows apps using WinUI 3, which ships as a part of the Windows App SDK. The latest available stable release is the Windows App SDK 0.8 (previously called Project Reunion). With this release, you can ship production Desktop apps to the Microsoft Store.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 8
    YoutubeExplode

    YoutubeExplode

    Abstraction layer over YouTube's internal API

    YoutubeExplode is a .NET library that provides a high-level abstraction for interacting with YouTube data, enabling developers to retrieve metadata and download media streams programmatically. The project exposes a clean API that allows applications to query videos, playlists, channels, and search results without relying on the official YouTube Data API. Under the hood, the library parses raw page data and leverages reverse-engineered internal endpoints to obtain structured information and stream manifests. Developers can use it to access details such as titles, authors, durations, captions, and available media formats, as well as to download audio or video streams for further processing. The library is designed to be intuitive and cross-platform through .NET Standard compatibility, making it suitable for desktop tools, automation pipelines, and media utilities.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 9
    C# SDL
    SDL.NET is a set of object-oriented .NET bindings for the SDL gaming library and provides high-level access to audio, keyboard, mouse, joystick, TTF fonts, various image formats, sound mixing, MPEG-1, and 2D video framebuffer.
    Leader badge
    Downloads: 32 This Week
    Last Update:
    See Project
  • Gemini 3 and 200+ AI Models on One Platform Icon
    Gemini 3 and 200+ AI Models on One Platform

    Access Google's best plus Claude, Llama, and Gemma. Fine-tune and deploy from one console.

    Build generative AI apps with Vertex AI. Switch between models without switching platforms.
    Start Free
  • 10
    Apache log4net

    Apache log4net

    Apache Log4net is a versatile, feature-rich, efficient logging API

    The Apache log4net library is a tool to help the programmer output log statements to a variety of output targets. log4net is a port of the excellent Apache log4j™ framework to the Microsoft® .NET runtime. We have kept the framework similar in spirit to the original log4j while taking advantage of new features in the .NET runtime. The log4net framework is based on Apache log4j™, The log4net framework, source code, binaries, documentation, examples and related materials are published under the terms of the Apache License. This document is an introduction to the log4net API, its unique features and design rationale. Log4net is an open source project based on the work of many authors. It allows the developer to control which log statements are output with arbitrary granularity. It is fully configurable at runtime using external configuration files.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 11
    Basic Computer Games

    Basic Computer Games

    An updated version of the classic "Basic Computer Games" book

    Basic Computer Games is a modern revitalization of the classic “Basic Computer Games” book’s collection of games, ported and expanded into various modern, memory-safe and scripting languages. It includes illustrative code examples of many classic games (e.g. Blackjack, Bowling) in multiple languages, with the goal of making the historical games accessible and educational in safe modern environments. Definitely use the most recent versions and features of the target language, but also try to keep the code samples simple and explainable – the goal is to teach programming in the target language, not necessarily demonstrate the cleverest one-line tricks, or big system "enterprise" coding techniques designed for thousands of lines of code.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 12
    CameraVoyeur

    CameraVoyeur

    Windows-oriented utility to log frames from a connected camera devices

    CameraVoyeur is a small Windows-oriented utility that demonstrates how to capture, preview, and possibly log frames from a connected camera device in a lightweight way. It’s set up more like an experiment or proof-of-concept than a polished end-user app, focusing on the plumbing for grabbing images from the webcam. The project shows how to access the camera stream, keep it running, and expose the captured output for later use or display. Because it’s in a regular GitHub repo and not a closed binary, you can inspect the code to see how device selection, frame acquisition, and UI/display are wired. This makes it useful for developers who want to add camera capture to a Windows tool or who need a barebones sample to build surveillance, monitoring, or computer vision toys on top of. Its value is really in being a simple, readable reference rather than a big camera suite.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 13
    Dynamic Data

    Dynamic Data

    Reactive collections based on Rx.Net

    Rx is extremely powerful but out of the box provides nothing to assist with managing collections. In most applications, there is a need to update the collections dynamically. Typically a collection is loaded and after the initial load, asynchronous updates are received. The original collection will need to reflect these changes. In simple scenarios the code is simple. However, typical applications are much more complicated and may apply a filter, transform the original dto and apply a sort. Even with these simple everyday operations, the complexity of the code is quickly magnified. Dynamic data has been developed to remove the tedious code of dynamically maintaining collections. It has grown to become functionally very rich with at least 60 collection-based operations which amongst other things enable filtering, sorting, grouping, joining different sources, transforms, binding, pagination, data virtualization, expiration, disposal management plus more.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 14
    MvvmCross Plugins DateTimeConverter

    MvvmCross Plugins DateTimeConverter

    A set of date and time converters

    A MvvmCross plugin that provides date and time conversion utilities for cross-platform applications, simplifying time zone and formatting tasks.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 15
    OpenAI .NET

    OpenAI .NET

    The official .NET library for the OpenAI API

    OpenAI .NET is the official client library for calling the OpenAI REST API from C# and other .NET languages, with first-class support for modern .NET patterns. It provides strongly typed clients across API areas (chat, audio, images, embeddings, moderations, batches, files, models, vector stores, responses, realtime, assistants) and works with .NET Standard 2.0 while the examples use .NET 8. You install it via NuGet and authenticate with an API key, ideally through environment variables or configuration rather than hardcoding. Every synchronous method has an async counterpart, and the library offers convenient streaming primitives for chat completions so you can process tokens as they arrive. It supports tool/function calling, structured outputs via JSON schema, audio input/output, image generation, embeddings, Whisper transcription, and assistants with retrieval augmented generation.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 16
    Pidgin

    Pidgin

    A lightweight and fast parsing library for C#

    Pidgin is a lightweight and fast parser combinator library for C#. It allows developers to construct parsers using a declarative approach, facilitating the creation of complex parsers without external tools.​
    Downloads: 3 This Week
    Last Update:
    See Project
  • 17
    Stripe.net

    Stripe.net

    Stripe.net is a sync/async .NET 4.6.1+ client

    A .NET library to facilitate Stripe payment integration, supporting a full range of payment and subscription features for .NET applications.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 18
    prometheus-net

    prometheus-net

    .NET library to instrument your code with Prometheus metrics

    This is a .NET library for instrumenting your applications and exporting metrics to Prometheus.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 19
    FastReport Open Source

    FastReport Open Source

    Free Open Source Reporting tool for .NET

    Free Open Source Reporting tool for .NET Core/.NET Framework that helps your application generate document-like reports.
    Downloads: 43 This Week
    Last Update:
    See Project
  • 20
    This project consists of a linux kernel driver and some user-mode libraries. They allow a process to create a virtual usb host controller. Real or virtual usb devices can be "plugged" into this controller.
    Leader badge
    Downloads: 64 This Week
    Last Update:
    See Project
  • 21
    Design Patterns Written in Unity3D

    Design Patterns Written in Unity3D

    All Gang of Four Design Patterns written in Unity C#

    The Design Patterns Written in Unity3D project is a guide to implementing software design patterns specifically within the Unity game development environment. It demonstrates how common patterns such as singleton, observer, factory, and state can be adapted to Unity’s architecture. The repository includes practical examples and code snippets that show how to structure game systems for scalability and maintainability. It emphasizes clean code practices and modular design, helping developers build more robust and reusable components. The project also explains the reasoning behind each pattern, making it educational as well as practical. By focusing on Unity-specific use cases, it addresses challenges unique to game development workflows. Overall, it provides a valuable reference for improving code quality in Unity projects.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 22
    DockPanel Suite

    DockPanel Suite

    The Visual Studio inspired docking library for .NET WinForms

    Microsoft first introduced the docking panel layout in Visual Studio .NET (2002), and soon it became popular in application design. Many commercial .NET component vendors started to provide docking libraries initially, but there was no good free and open source alternative until WeiFen Luo released DockPanel Suite (DPS for short) on SourceForge.net in 2006. After an 18 month hiatus, the project has been resurrected and is now being actively developed on GitHub.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 23
    Enums.NET

    Enums.NET

    Enums.NET is a high-performance type-safe .NET enum utility library

    Enums.NET is a high-performance type-safe .NET enum utility library that provides many operations as convenient extension methods. It is compatible with .NET Framework 4.5+ and .NET Standard 1.0+. To help you migrate your code to using the new methods I have created the C# roslyn analyzer Enums.NET.Analyzer which provides a code fix to migrate your usage of the non-generic and unsafe methods to the new methods.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 24
    FakeItEasy

    FakeItEasy

    The easy mocking library for .NET

    A .Net dynamic fake framework for creating all types of fake objects, mocks, stubs etc. Easier semantics, all fake objects are just that, fakes. Usage determines whether they're mocks or stubs. Context-aware fluent interface guides the developer. Easy to use and compatible with both C# and VB.Net. Every faked instance looks and feels like an instance of the faked type. Helpful exception messages identify where a test went wrong. Raising events from faked objects. Explicit assertions, stated at the end of the test. Type-safe faking of classes that require constructor arguments. Automatic generation of dummy constructor arguments, if desired. Extensible facilities for fake and dummy creation and argument formatting. Use your fake as you would an instance of the faked type. Asserting uses the same syntax as configuring calls.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 25
    MahApps.Metro IconPacks

    MahApps.Metro IconPacks

    Awesome icon packs for WPF and UWP in one library

    Awesome icon packs for WPF and UWP in one library.
    Downloads: 2 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB