Learn The Secrets To Build Scalable .NET Microservices That Ship Fast

Building Microservices With .NET Online Course

Are you suffering the symptoms of the monolithic hell? Has it become impossible to scale your increasingly complex system? Is it taking forever to build, test and deploy features to production?

Master all the building blocks of a complete .NET microservices architecture that finally lets you continuously deliver resilient and scalable systems in minutes, not months.


What Are Microservices?

Autonomous, loosely coupled services

Microservices are an architectural style that structures an application as a collection of autonomous, loosely coupled services that are modeled around a business domain. Each microservice is focused on doing one thing well.

Owned by small, focused teams

A microservice is small enough that a single feature team can own it. Small team sizes promote greater agility. Large teams tend be less productive, because communication is slower, management overhead goes up, and agility diminishes.

Built and deployed independently

A team can update an existing microservice without rebuilding and redeploying the entire application, and roll back an update if something goes wrong. In traditional applications, a bug found in one part of the application, can block the entire release.


A complete microservices architecture

Connect all the building blocks of a modern microservices architecture using .NET 5, ASP.NET Core, MongoDB, Docker, RabbitMQ, MassTransit, IdentityServer and many other fundamental pieces used in resilient, loosly coupled distributed systems.


Who is using microservices?

Top companies that are constantly dealing with very complex changing requirements have been embracing microservices for several years.

Only microservices allow teams to stay agile and autonomous, while also getting your system ready to scale when unexpected traffic peaks show up.

I really enjoyed this course. The content and pacing was just right for me as someone with C# experience but little microservices experience. Julio is really responsive to questions and has an engaging teaching style.
Nathan Waterman
It's a perfect course to learn the basics of microservices. Also, great introductory to learn Docker, Mongo Db and Message Brokers. It's clear and easy to understand.
Alper Tunga
This course teaches you WebApi, DI, new c# 9.0 functionalities, Docker, mongodb, microservices stuff and even some Postman stuff I wasn't aware of. Really went far beyond all my expectations. I did other individual courses about some of these topics (some considerably more expensive) and now I feel that most of these would not have been necessary had I watched this one first. Very likely the best programming course I ever did.
Eduardo Martins
Amazing course I'd recommend anybody who wants to quickly grasp the fundamentals of microservices based on the .NET stack in a very practical way. There's no fluff material and the content itself is structured pretty well.
Samuel Tóth

The microservices learning path


The complete learning path in numbers


Happy Students


Hours Watched




Who is this course for?

  • Dev leads and software architects, familiar with C#/.NET/ASP.NET Core, looking to understand if microservices is the right choice for their next project.
  • Experienced C#/.NET/ASP.NET developers tired of the pains caused by monolithic systems, looking for the best approach to transition to a modern microservices architecture.

Course curriculum

01 Welcome to the course! 5 lessons • 31mins
  • Course Introduction
  • Source code and other course downloads
  • Development environment setup
  • What's wrong with the monolith?
  • What are microservices?
02 Your first microservice 6 lessons • 1hr 2min
  • Introduction
  • Creating a microservice via the .NET CLI
  • Introduction to the REST API and DTOs
  • Adding the DTOs
  • Adding the REST API operations
  • Handling invalid inputs
03 Adding database storage 8 lessons • 1hr 5min
  • Introduction
  • Introduction to the repository pattern and MongoDB
  • Implementing a MongoDB repository
  • Introduction to Docker
  • Trying out the REST API with a MongoDB container
  • Introduction to Dependency Injection and Configuration
  • Implementing dependency injection and configuration
04 Preparing for the next microservice 8 lessons • 1hr 7min
  • Introduction
  • Using Postman
  • Reusing common code via NuGet
  • Refactoring into a generic MongoDB repository
  • Refactoring MongoDB registration into extension methods
  • Moving generic code into a reusable NuGet package
  • Introduction to Docker Compose
  • Moving MongoDB to docker compose
05 Synchronous inter-service communication 9 lessons • 1hr 18min
  • Introduction
  • Creating the Inventory microservice
  • Introduction to synchronous communication
  • Implementing synchronous communication via IHttpClientFactory
  • Understanding timeouts and retries with exponential backoff
  • Implementing a timeout policy via Polly
  • Implementing retries with exponential backoff
  • Understanding the circuit breaker pattern
  • Implementing the circuit breaker pattern
06 Asynchronous inter-service communication 8 lessons • 1hr 21min
  • Introduction
  • Introduction to asynchronous communication
  • Defining the message contracts
  • Publishing messages via MassTransit
  • Standing up a RabbitMQ docker container
  • Refactoring MassTransit configuration into the reusable NuGet package
  • Consuming messages for eventual data consistency
  • Removing the inter-service synchronous communication
07 Initial Frontend Integration 7 lessons • 50min
  • Introduction
  • Installing Node.js
  • Getting the React frontend source code
  • Getting started with the frontend
  • Understanding CORS
  • Adding the CORS middleware
  • Exploring the frontend to microservices communication
08 Identity in Microservices 5 lessons • 1hr 4min
  • Introduction
  • Introduction to ASP.NET Core Identity
  • Creating the Identity microservice
  • Integrating ASP.NET Core Identity with MongoDB
  • Adding the Users REST API
09 Microservices Security Patterns and Techniques 5 lessons • 1hr 27min
  • Introduction
  • Microservices authentication
  • Introduction to OAuth 2.0
  • Introduction to OpenID Connect
  • Introduction to IdentityServer
10 Implementing Microservices Security 8 lessons • 1hr 35min
  • Introduction
  • Setting up IdentityServer
  • Requesting tokens via Postman
  • Understanding JSON Web Tokens
  • Securing the Catalog microservice
  • Generalizing how to add authentication to microservices
  • Securing the Inventory microservice
  • Securing the Identity microservice
11 Authorization in Microservices 7 lessons • 1hr 11min
  • Introduction
  • Storing secrets during local development
  • Understanding Authorization in ASP.NET Core
  • Seeding users and roles
  • Adding users to the Player role
  • Implementing role-based authorization
  • Implementing claims-based authorization
12 Frontend Integration to Secure Microservices 8 lessons • 58min
  • Introduction
  • Getting the React frontend source code
  • Configuring CORS in the Identity microservice
  • Adding the frontend client to the IdentityServer configuration
  • Fixing the logout experience
  • Using ID tokens in the frontend client
  • Using access tokens in the frontend client
  • Fixing the user registration experience
13 Transactions with Microservices 5 lessons • 20min
  • Introduction
  • Database Transactions
  • Distributed Transactions
  • Introduction to Sagas
  • Choreographed VS Orchestrated Sagas
14 Preparing the Saga participants 6 lessons • 52min
  • Introduction
  • Purchase Saga Overview
  • Publishing Catalog prices
  • Allowing services to customize the retry configuration
  • Granting and subtracting items via asynchronous messages
  • Debiting gil via asynchronous messages
15 Implementing the Purchase Saga 13 lessons • 2hr 7min
  • Introduction
  • Creating the Trading microservice
  • Creating a MassTransit state machine
  • Initializing the state machine
  • Adding the Purchase controller
  • Configuring the Trading microservice
  • Trying out the state machine
  • Querying the state machine via a controller action
  • Consuming Catalog prices in the Trading microservice
  • Adding a custom state machine activity
  • Sending and consuming Inventory messages from the state machine
  • Unsing the MassTransit In-Memory Outbox
  • Sending and consuming Identity messages from the state machine
16 Compensation and Idempotency 7 lessons • 1hr 2min
  • Introduction
  • Compensating actions in the state machine
  • Idempotency in microservices
  • Adding idempotency to a controller action
  • Handling out of order messages in the state machine
  • Handling message duplication
  • Implementing idempotent consumers
17 The Frontend Store Experience 9 lessons • 1hr 39min
  • Introduction
  • Store experience overview
  • Publishing inventory updated events
  • Publishing user updated events
  • Consuming Inventory and Identity events in the Trading microservice
  • Implementing the Store controller
  • Trying out the updated Frontend portal
  • Real-time updates via SignalR
  • Configuring SignalR authentication
  • Sending real-time updates from the state machine via SignalR

What you get when you enroll

19+ hours on-demand video

More than 19 hours of didactic, high quality video, specifically designed for learning purposes.

Source code

Each coding lesson includes downloadable source code so you can easily compare and troubleshoot.

Full lifetime access

Learn at your own pace, from anywhere and come back anytime. You'll have full access for life.


Your Instructor

Hi! My name is Julio Casal. I'm a passionate software engineer with almost two decades of experience building all sorts of applications and systems based on the .NET platform.

I like to continuously explore the latest software engineering trends and practices and use them to solve real world problems.

I believe reducing complex concepts into simple step by step instructions is incredibly valuable and helps to make coding accessible and fun for everyone.


Start Building Microservices With .NET Today!

One-time payment
Best Value

  • Instant access to the latest course content
  • 18+ hours of self-paced, high quality training
  • Full source code for all coding lessons
  • All Postman collections used in the course
  • Lifetime access
  • Full captions
  • Ask questions to the instructor any time
  • Access the course discussions
  • Get new modules at no additional cost
  • Money Back Guarantee
Payment Plan
$97/ mo
x 8 months

  • Instant access to the latest course content
  • 18+ hours of self-paced, high quality training
  • Full source code for all coding lessons
  • All Postman collections used in the course
  • Lifetime access
  • Full captions
  • Ask questions to the instructor any time
  • Access the course discussions
  • Get new modules at no additional cost
  • Money Back Guarantee

Money Back Guarantee

I do my best to provide high quality content that will meet or exceed your expectations. But if for whatever reason you find this course isn't for you, you can request a refund during the first 30 days.