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

  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 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
  • 1
    Open Live Writer

    Open Live Writer

    An open source fork of Windows Live Writer

    Open Live Writer is like Word for your blog. Open Live Writer is a powerful, lightweight blog editor that allows you to create blog posts, add photos and videos then publish to your website. You can also compose blog posts offline and then publish on your return. Open Live Writer works with many popular blog service providers such as WordPress, Blogger, TypePad, Moveable Type, DasBlog, and many more. Open Live Writer is an open-source application enabling users to author, edit, and publish blog posts. It is based on a fork of the well-loved but not actively developed Windows Live Writer code. Open Live Writer is provided under a MIT license. If you're interested in getting occasional notices of updates to Open Live Writer and hearing about opportunities to try new features, you can subscribe to our Announcements email list.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 2
    OpenIddict

    OpenIddict

    Versatile OpenID Connect stack for ASP.NET Core and Microsoft.Owin

    OpenIddict aims at providing a versatile solution to implement OpenID Connect client, server and token validation support in any ASP.NET Core 2.1 (and higher) application. ASP.NET 4.6.1 (and higher) applications are also fully supported thanks to a native Microsoft.Owin 4.2 integration. Developers looking for a simple and turnkey solution are strongly encouraged to use OrchardCore and its OpenID module, which is based on OpenIddict, comes with sensible defaults and offers a built-in management GUI to easily register OpenID client applications. Unlike many other identity providers, OpenIddict is not a turnkey solution but a framework that requires writing custom code to be operational (typically, at least an authorization controller), making it a poor candidate for the certification program. While a reference implementation could be submitted as-is, this wouldn't guarantee that implementations deployed by OpenIddict users would be standard-compliant.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 3
    ReactiveUI

    ReactiveUI

    An advanced, composable, functional reactive model-view-viewmodel

    An advanced, composable, functional reactive model-view-viewmodel framework for all .NET platforms! Describe what you want, not how to do it & rejoice in the increased readability of your code. Code is communication between people, that also happens to run on a computer. If you optimise for reading by humans, then over a long time your project will end up better. Create re-usable chunks of functionality that can be seamlessly integrated into your reactive pipelines. These chunks might be widely applicable, or specific to your application. Regardless, you have the power to write and test code once, and leverage it many times over. Any device, any platform. Share business logic between your mobile and desktop applications. ReactiveUI has first class support for Xamarin Forms, Xamarin.iOS, Xamarin.Android, Xamarin.Mac, Tizen, Windows Forms, Windows Presentation Foundation (WPF), & Universal Windows Platform (UWP).
    Downloads: 2 This Week
    Last Update:
    See Project
  • 4
    SendGrid C#

    SendGrid C#

    The Twilio SendGrid C# API Library

    Leverage the email service that customer-first brands trust for reliable inbox delivery at scale. This library allows you to quickly and easily use the Twilio SendGrid Web API v3 via C#. Manage your Twilio SendGrid API Keys by storing them in Environment Variables or in Web. It is a good practice to keep your data and configuration settings separate. This way you can change your Twilio SendGrid API key without changing your code. Also, we strongly advise against storing sensitive data directly in your code. Integrate in minutes with our email API and trust your emails reach the inbox. Build meaningful connections with smart email marketing. Seamlessly integrate with our partners and major platforms. Create emails with HTML code, a drag-and-drop editor, or a combination of both. Engage contacts with approachable, time-saving automation.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Veeam Data Platform v13.1 Icon
    Veeam Data Platform v13.1

    Move workloads across hypervisors and clouds with no vendor lock-in. Try VDP free today.

    Try Veeam Data Platform today. Experience the unified platform that's secure by design, portable by default, and proven to recover clean, fast, and anywhere.
    Try Now
  • 5
    SmartEnum

    SmartEnum

    A base class for creating strongly typed enum replacements in C#

    SmartEnum is a .NET library that provides a strongly typed alternative to traditional C# enums by allowing developers to create richer, object-oriented enumeration classes. Instead of being limited to primitive numeric values, SmartEnum enables enums to include behavior, validation, and additional properties while preserving type safety and readability. The library is widely used in domain-driven design scenarios where business concepts require more expressive modeling than standard enums allow. Developers define custom enumerations by inheriting from a base SmartEnum class and declaring static instances, which can then be queried by name or value. The project also includes ecosystem support for serialization, Entity Framework persistence, and validation attributes, making it suitable for real-world enterprise applications. Overall, SmartEnum helps teams write more maintainable and intention-revealing domain code by replacing brittle primitive enums with extensible types.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 6
    Testcontainers

    Testcontainers

    A library to support tests with throwaway instances of Docker

    Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container. Use a containerized instance of a MySQL, PostgreSQL or Oracle database to test your data access layer code for complete compatibility, but without requiring complex setup on developers' machines and safe in the knowledge that your tests will always start with a known DB state. Any other database type that can be containerized can also be used. For running your application in a short-lived test mode with dependencies, such as databases, message queues or web servers. Use containerized web browsers, compatible with Selenium, for conducting automated UI tests. Each test can get a fresh instance of the browser, with no browser state, plugin variations or automated browser upgrades to worry about. And you get a video recording of each test session, or just each session where tests failed.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    Vanara

    Vanara

    A set of .NET libraries for Windows implementing PInvoke calls

    This project contains various .NET assemblies that contain P/Invoke functions, interfaces, enums and structures from Windows libraries. Each assembly is associated with one or a few tightly related libraries. For example, Shlwapi.dll has all the exported functions from shlwapi.lib; Kernel32.dll has all for both kernel32.lib and kernelbase.lib. All assemblies are available via NuGet and provide builds against .NET 4.5, 4.8, 5.0, 6.0, .NET Standard 2.0, Core 3.1 and support SourceLink. Extensions are available for WinForms, WPF, and UWP projects. If you need support for other .NET versions, look to versions 3.3.15 and earlier. This project releases new versions every few weeks after sufficient testing. New releases are cataloged, along with release notes, in the Releases section and all NuGet packages are published to nuget.org. Each GitHub push triggers an AppVeyor build. The owners thank them for the free Open-Source account! The status of that build is in the header of this page.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    Xamarin.iOS & Xamarin.Mac

    Xamarin.iOS & Xamarin.Mac

    Bridges the worlds of .NET with the native APIs of macOS, iOS, tvOS

    Bridges the worlds of .NET with the native APIs of macOS, iOS, tvOS, and watchOS. This module is the main repository for both Xamarin.iOS and Xamarin.Mac. These SDKs allow us to create native iOS, tvOS, watchOS and macOS applications using the same UI controls we would in Objective-C and Xcode, except with the flexibility and elegance of a modern language (C#), the power of the .NET Base Class Library (BCL), and two first-class IDEs—Visual Studio for Mac and Visual Studio—at our fingertips. This repository is where we do development for the Xamarin.iOS and Xamarin.Mac SDKs. The preferred method for installing Xamarin.iOS and Mac is to use the Visual Studio installers (Windows, Mac). The team also strongly recommends using the latest Xamarin SDK and Xcode whenever possible.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 9
    YamlDotNet

    YamlDotNet

    YamlDotNet is a .NET library for YAML

    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. YAML, which stands for "YAML Ain't Markup Language", is described as "a human-friendly data serialization standard for all programming languages". Like XML, it allows to represent of any kind of data in a portable, platform-independent format. Unlike XML, it is "human friendly", which means that it is easy for a human to read or produce a valid YAML document. The library has now been successfully used in multiple projects and is considered fairly stable. The library is compatible with mono's Ahead-of-Time compilation (AOT), and should work correctly on platforms that depend on it, such as Unity.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Earn up to 16% annual interest with Nexo. Icon
    Earn up to 16% annual interest with Nexo.

    Let your crypto work for you

    Put idle assets to work with competitive interest rates, borrow without selling, and trade with precision. All in one platform. Geographic restrictions, eligibility, and terms apply.
    Get started with Nexo.
  • 10
    xNode

    xNode

    Unity Node Editor: Lets you view and edit node graphs inside Unity

    Unity Node Editor: This lets you view and edit node graphs inside Unity. Thinking of developing a node-based plugin? Then this is for you. You can download it as an archive and unpack to a new unity project, or connect it as a git submodule. xNode is super userfriendly, and intuitive and will help you reap the benefits of node graphs in no time. With a minimal footprint, it is ideal as a base for custom state machines, dialogue systems, decision-makers, etc. No runtime reflection (unless you need to edit/build node graphs at runtime. In this case, all reflection is cached.) Custom node-inspector code is very similar to regular custom inspector code. Plugins are repositories that add functionality to xNode.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 11
    This is the home of the old MindTouch Platform and Core. This project was turned over to the community in 2010. Please visit www.MindTouch.com for the most up to date version of MindTouch--software that accelerates customer success. More info on the old Core and Platform: http://mndt.ch/oss-dep Thanks for your interest and for making the old MindTouch open source one of the most popular (top 5) open source projects in the world from 2007-2010. Some key terms commonly associated with this project are: customer support, self service support, customer success center, help center, enterprise wiki, etc
    Downloads: 9 This Week
    Last Update:
    See Project
  • 12
    Scrolling Game Development Kit 2
    All-in-one program for creating 2D scrolling games. Compile your games into stand-alone .NET executables or customizable C# source code. The IDE and framework are build on OpenTK, which wraps OpenGL, so generated games can be cross-platform.
    Leader badge
    Downloads: 7 This Week
    Last Update:
    See Project
  • 13
    A software toolkit for using the EPCglobal Low Level Reader Protocol (LLRP) to communicate with conforming RFID readers.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 14
    .NET MAUI Community Toolkit

    .NET MAUI Community Toolkit

    The .NET MAUI Community Toolkit is a community-created library

    The .NET MAUI Community Toolkit is a collection of common elements for development with .NET MAUI that developers tend to replicate across multiple apps. It simplifies and demonstrates common developer tasks when building apps with .NET MAUI. And – the best part – the features you add to the .NET MAUI Toolkit may one day be included into the official .NET MAUI library! We leverage the Community Toolkits to debut new features and work closely with the .NET MAUI engineering team to nominate features for promotion. All features are contributed by you, our amazing .NET community, and maintained by a core set of maintainers.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    .NET for Apache Spark

    .NET for Apache Spark

    A free, open-source, and cross-platform big data analytics framework

    .NET for Apache Spark provides high-performance APIs for using Apache Spark from C# and F#. With these .NET APIs, you can access the most popular Dataframe and SparkSQL aspects of Apache Spark, for working with structured data, and Spark Structured Streaming, for working with streaming data. .NET for Apache Spark is compliant with .NET Standard - a formal specification of .NET APIs that are common across .NET implementations. This means you can use .NET for Apache Spark anywhere you write .NET code allowing you to reuse all the knowledge, skills, code, and libraries you already have as a .NET developer. .NET for Apache Spark runs on Windows, Linux, and macOS using .NET Core, or Windows using .NET Framework. It also runs on all major cloud providers including Azure HDInsight Spark, Amazon EMR Spark, AWS & Azure Databricks.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    ASP.NET API Versioning

    ASP.NET API Versioning

    Libraries which add service API versioning to ASP.NET Web API

    ASP.NET API versioning gives you a powerful, but easy-to-use method for adding API versioning semantics to your new and existing REST services built with ASP.NET. The API versioning extensions define simple metadata attributes and conventions that you use to describe which API versions are implemented by your services. You don't need to learn any new routing concepts or change the way you implement your services in ASP.NET today. The default API versioning configuration is compliant with the versioning semantics outlined by the Microsoft REST Guidelines. There are also a number of customization and extension points available to support transitioning services that may not have supported API versioning in the past or supported API versioning with semantics that are different from the Microsoft REST versioning guidelines.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    ASP.NET Minimal APIs Made Easy

    ASP.NET Minimal APIs Made Easy

    A light-weight REST API development framework for ASP.Net 6

    It nudges you towards the REPR Design Pattern (Request-Endpoint-Response) for convenient & maintainable endpoint creation with virtually no boilerplate. Performance is on par with Minimal APIs. It's faster, uses less memory and does around 45k more requests per second than a MVC Controller in our benchmarks. Convenient business logic validation & error responses. Easy access to environment & configuration settings. Supports policy/permission/role/claim based security. In-process pub/sub event notifications (with auto discovery). Declarative security policy building (within each endpoint). Easy Server-Sent-Events for real-time data streaming. Supports any IOC container compatible with ASP.NET. Convenient integration testing (route-less & strongly-typed). Constructor & property injection of endpoint dependencies. Built-in uncaught exception handler. Easy model binding from route/query/json body/claims/forms/headers. Supports swagger/serilog/etc.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Bing.NetCore

    Bing.NetCore

    Bing is a framework based on .net core 3.1

    Bing is a framework based on .net core 3.1, aiming to improve the development output capability of the team. It consists of commonly used public operation classes (tool classes, help classes), layered architecture base classes, third-party component packaging, third-party business interface packaging, etc. Bing is a .net coreplatform-based application framework designed to improve the development output capabilities of small teams. It consists of commonly used public operation classes (tool classes, help classes), layered architecture base classes, third-party component packaging, third-party business interface packaging, etc. composition.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    BlazorTable

    BlazorTable

    Blazor Table component with sorting, paging and filtering

    Blazor Table component with sorting, paging and filtering. Provides column reordering features, edit mode, client side, paging and sorting, filtering and much more.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    Bot Framework SDK for .NET

    Bot Framework SDK for .NET

    Welcome to the Bot Framework SDK for .NET repository

    This repository contains code for the .NET version of the Microsoft Bot Framework SDK, which is part of the Microsoft Bot Framework - a comprehensive framework for building enterprise-grade conversational AI experiences. This SDK enables developers to model conversation and build sophisticated bot applications using .NET. SDKs for JavaScript, Python and Java (preview) are also available. To get started building bots using the SDK, see the Azure Bot Service Documentation.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    BotSharp

    BotSharp

    AI Multi-Agent Framework in .NET

    Conversation as a platform (CaaP) is the future, so it's perfect that we're already offering the whole toolkits to our .NET developers using the BotSharp AI BOT Platform Builder to build a CaaP. It opens up as much learning power as possible for your own robots and precisely control every step of the AI processing pipeline. BotSharp is an open source machine learning framework for AI Bot platform builder. This project involves natural language understanding, computer vision and audio processing technologies, and aims to promote the development and application of intelligent robot assistants in information systems. Out-of-the-box machine learning algorithms allow ordinary programmers to develop artificial intelligence applications faster and easier. It's written in C# running on .Net Core that is full cross-platform framework. C# is a enterprise-grade programming language which is widely used to code business logic in information management-related system.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    Brighter

    Brighter

    A framework for building messaging apps with .NET and C#

    This project is a Command Processor & Dispatcher implementation with support for task queues that can be used as a lightweight library. It can be used for implementing Ports and Adapters and CQRS (PDF) architectural styles in .NET. It can also be used in microservices architectures for decoupled communication between the services. Brighter supports Task Queues. As such it can be used to improve performance by introducing concurrency using a queue, and/or as an integration strategy between Microservices using messaging via a lightweight broker. Brighter provides support for CQRS architecture. It provides a simple library for routing commands and events to handlers. Brighter allows you to offload work from your web process to a worker process via a task queue. This allows in or out-of-process handlers. Brighter can act as a communications library for microservices, allowing commands or events to be passed between services.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    CacheManager

    CacheManager

    CacheManager is an open source caching abstraction layer for .NET

    CacheManager is an open source caching framework for .NET written in C# and is available via NuGet. It supports various cache providers and implements many advanced features. A simple but very efficient implementation. This handle is faster than any other in most scenarios and works cross-platform. Two implementations are available, based on System.Runtime.Caching and based on the new Microsoft.Extensions.Caching.Memory package. Redis can be used as an extremely fast and reliable out-of-process (or distributed) solution. Another great distributed solution is memcached, which can be used as a layer. The Redis implementation is based on the popular StackExchange.Redis package. Couchbase is primarily a document database but can also be used for simple caching. ASP.NET comes with its own in-process memory cache which can be used as one layer. Our Web NuGet package also comes with a custom OutputCacheProvider.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    CodeBehind Framework

    CodeBehind Framework

    CodeBehind is a modern back-end framework under ASP.NET Core.

    CodeBehind is a modern back-end framework under ASP.NET Core. CodeBehind was developed by Elanat in 2023 and competes with Microsoft's default web frameworks (ASP.NET Core MVC and Razor Pages and Blazor). CodeBehind is an engineering masterpiece that simultaneously provides the possibility of development based on MVC, Model-View, Controller-View, only View, and Web-Forms. The type of structure and naming in CodeBehind is nostalgia and reminds me of former Microsoft Web-Forms. The aspx extension is the files of the view section in the CodeBehind framework and they support standard syntax (<%=Standard%>) and Razor syntax (@Razor). This framework guarantees the separation of server-side codes from the design part (HTML) and there is no need to write server-side codes in the view.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    CommandLineUtils

    CommandLineUtils

    Command line parsing and utilities for .NET

    CommandLineUtils is a library that helps developers implement command line applications in .NET. The primary goal of the library is to assist with parsing command line arguments and executing the correct commands related to those arguments. The library also provides various other utilities such as input helpers. This project helps you create command line applications using .NET. It simplifies parsing arguments provided on the command line, validating user inputs, and generating help text. CommandLineApplication is the main entry point for most console apps parsing. There are two primary ways to use this API, using the builder pattern and attributes. The library also includes other utilities for interaction with the console. A common scenario for options is to allow specifying a value-less option multiple times without value. The library supports counting flags by using bool[] or by checking for the number of values in Values.
    Downloads: 1 This Week
    Last Update:
    See Project