Have you tried ML.NET?
It's a new machine learning framework made specifically for .NET developers.

Microservices with .NET

Build independently deployable, highly scalable & resilient services using the free and open source .NET platform.

Get started Architecture guidance

Supported on Windows, Linux, and macOS

What are Microservices?

Microservices are a design pattern in which applications are composed of small, independent modules that communicate with each other using well-defined contracts. Each microservice focuses on a single concept.

Why Microservices?

Microservices make it easier to develop, test, and deploy isolated parts of your application. Once deployed, each microservice can be independently scaled as needed.

Microservices and containers

Containers combine an app plus its configuration and dependencies into a single, independently deployable unit. Containers are an excellent fit for bundling and deploying independent microservices.

Build microservices with .NET

ASP.NET, the web framework for .NET, makes it easy to create the APIs that become your microservices. ASP.NET comes with built-in support for developing and deploying your microservices using Docker containers.

.NET includes APIs to easily consume microservices from any application you build, including mobile, desktop, gaming, web, and more.

.NET is built to work with Docker

You can find the official Docker images for .NET on DockerHub, meaning the initial setup is done and you can focus on building your microservices.

The .NET Docker samples and developer documentation give you all the info you need to get the job done.

Performance where it matters

.NET is fast, with a higher throughput than any other popular framework in the respected TechEmpower benchmark.

Raygun, a real-time application monitoring solution, achieved a 2,000 percent increase in throughput by porting their Node.js service running on Linux to .NET, using the same Linux environment.

Read more about the Raygun story

"Using the same-size server, we were able to go from 1,000 requests per second per node with Node.js to 20,000 requests per second with .NET Core."

Great tools for Linux, macOS, and Windows

The Visual Studio family of products has built-in support for working with Docker on Linux, macOS, and Windows. Easily configure your application for Docker, then step through your code line-by-line as it runs in a Docker container.

Work with Docker in Visual Studio

Incrementally adopt microservices

If you have an existing application you can begin adopting microservices without completely overhauling your app.

Containers aren't just for microservices, so your existing app can be moved into a container. As you add new functionality, or update existing functionality, you can split this off into a microservice running in a separate container.

This is also a great approach for adopting the latest version of .NET, without having to upgrade an entire legacy code base.

Get a free e-book on modernizing .NET apps

.NET side-by-side with other stacks

The microservices architecture allows a mix of technologies between each service. You can use .NET for parts of your application without adopting it everywhere. .NET microservices can be mixed with those written in Node.js, Java, Go, or any other language.

Scale with ease

.NET Core is built from the ground up for scaling in Cloud. Microservices built with .NET run on all major cloud platforms.

If you haven't yet decided on a cloud, we recommend Azure. Azure is the best cloud for .NET developers because it was built with .NET developers in mind.

Explore options for hosting your microservices on Azure

.NET Microservices: Architecture for containerized .NET Applications

This guide is an introduction to developing microservices-based applications and managing them using containers. It discusses architectural design and implementation approaches using .NET and Docker containers.

Free PDF download
More download options

Containerized Docker application lifecycle with Microsoft Platform and Tools

This guide provides DevOps guidance for deploying and maintaining production .NET microservices, using Docker containers, Kubernetes, and Azure Service Fabric.

Free PDF download
More download options

Modernizing .NET applications with Azure cloud and Windows Containers

Learn how to move your existing .NET Framework server applications directly to the cloud by modernizing specific areas, without re-architecting or recoding entire applications.

Free PDF download
More download options

Ready to Get Started?

Our step-by-step tutorial will help you get microservices with ASP.NET running on your computer.

Supported on Windows, Linux, and macOS

Get Started