.NET Tools
Essential productivity kit for .NET and game developers
Simplifying Distributed Systems: Jason Taylor Shows How .NET Aspire Makes the Complex Feel Effortless
At JetBrains .NET Days Online 2025, Jason Taylor, Microsoft MVP and Solutions Architect at Particular Software, delivered an engaging presentation that transforms how we think about building distributed systems. Through live coding and interactive polls with the audience, Taylor demonstrated how .NET Aspire can turn what’s traditionally been a complex, friction-filled process into something surprisingly manageable.
Whether you’re building your first distributed system or looking to modernize an existing one, Jason Taylor’s presentation offers both practical techniques and a refreshing perspective on how development tools should work. In short, they should make the complex feel effortless.
Watch the full presentation
Effortless Distributed Systems With .NET Aspire – Jason Taylor, October 2025.
The philosophy of “effortless”
Jason Taylor opens with a crucial distinction that sets the tone for the entire presentation:
“Effortless doesn’t mean no effort. It means reducing friction and spending effort in the right places.”
(02:03)
This philosophy underpins everything that follows. .NET Aspire isn’t about eliminating work, but about eliminating the wrong kind of work.
The goal, as the speaker explains, is straightforward: “Shifting the focus back to what matters, right? Delivering features that users care about. We want to reduce wasted effort by eliminating manual setup, wiring, and boilerplate.”
From zero to orchestrated in minutes
Starting with a basic ASP.NET Core application that’s intentionally unreliable, Jason shows how adding .NET Aspire immediately transforms the development experience. With just a few clicks, the application gains automatic retry policies, service discovery, health checks, and comprehensive telemetry.
The transformation is dramatic: “When we added orchestration support to our application, we got lots of things for free. And one of those was HTTP client resilience, and it was using Polly to retry that request whenever it failed.” (10:16) No configuration files, no manual wiring – just instant resilience.
The developer experience revolution
Perhaps the most compelling aspect of Jason’s demonstration is how Aspire transforms the local development experience. “The best part of course is our local development experience couldn’t be simpler or better. One press of F5 launches the entire system ready to test and observe instantly. (42:07)”
But this feature isn’t just about convenience for experienced developers, as Jason also emphasizes its utility when it comes to team onboarding: “That’s an excellent experience for a new developer who joins your team and is trying to get up and running. They press F5, then they start learning about the system.” Gone are the days of lengthy setup documentation and “but it works on my machine” problems.
Live database migration without the pain
In one of the presentation’s interactive moments, Jason lets the audience vote on which database to use, and PostgreSQL wins over Azure SQL (14:27 ). What follows is a masterclass in how Aspire handles infrastructure changes. Within minutes, he swaps out SQLite for PostgreSQL, complete with Docker containerization, migrations, and service discovery.
The key insight: “No more juggling startup projects. With service defaults, we instantly get service discovery, health checks, resilience, and telemetry, all without manual setup.”
Messaging made simple
Jason then tackles one of distributed systems’ thorniest challenges – reliable messaging (22:45). Using NServiceBus (from his employer, Particular Software), he demonstrates how Aspire’s abstraction model makes switching between message transports effortless. The audience votes for RabbitMQ over Azure Service Bus, and Jason seamlessly makes the switch with minimal code changes, all while maintaining the same local development experience.
From local to cloud without the usual headaches
The presentation’s climax comes when Jason deploys the entire system to Azure (42:39). Using the Azure Developer CLI (azd) with Aspire’s deployment manifest, he sets up a complete CI/CD pipeline with Azure DevOps (another audience choice) in under five minutes.
“With Aspire, our C# app model became the source of truth. We didn’t write any Bicep, ARM, or Terraform code. The deployment manifest describes our entire system and feeds directly into tools like AZD.” The entire infrastructure, including databases, message queues, and observability tools, is derived from the C# code that defines the application.
The bottom line
Jason Taylor’s closing advice distills the entire presentation into actionable wisdom:
“Choose the right tools, remove the friction, and focus on what truly matters, delivering features that make an impact.”
Follow Jason Taylor on X or visit his blog for more content on .NET, Azure, and distributed systems.
Watch the full recording of this year’s online event on YouTube:
▶️ Day 1: Aspire, Clean Architecture, C# Nullability, Messaging, Uno, Blazor TDD.
▶️ Day 2: Event-Driven Systems & GenAI With Aspire, F#, dotMemory, and More.
You may also find these interesting:
- Composing Distributed Applications With .NET Aspire – a presentation from .NET Days 2024 by Cecil Phillip that demonstrates .NET Aspire’s approach to building distributed apps.
- .NET Aspire and Dev Container – an article by Laurent Kempé showing how to work with .NET Aspire 9.1 inside a Dev Container using JetBrains Rider.
- Simplify Your .NET Development With Aspire – a step-by-step guide by Microsoft MVP Joseph Guadagno on adding .NET Aspire to an existing .NET 9 web app, including specific instructions for JetBrains Rider.