
September last year, Microsoft announced that a large number of backend services would be migrated to .NET 6. This, they said, was an enterprise-wide initiative .
Now, about half a year later, Microsoft delivers in a very detailed blog post that their expectations in performance, efficiency and scalability have been far exceeded by .NET 6. What was migrated was a permission service that still has its origins from the time of Skype from 2013.
- The performance advantage has been reduced by 50%: it is now 100%.
- The latency could even be reduced by 45%.
The migration was not entirely trivial. About 2 weeks were invested in the analysis of the necessary steps alone:
- Updating all projects to the new .NET SDK format
- Modernization of the entire code base (Host Builders, with Dependency Injection, ILogger and IOptions Pattern…)
- Replacing blocking dependencies with .NET 6 alternatives.
- Migration to Kestrel and ASP.NET Core 6
- Updating CI/CD
The very detailed blogpost incl. performance analysis and insight into Teams’ teamwork at Microsoft Teams’ Permission Service migration to .NET 6
Related articles

Mar 10, 2026 · 15 min read
.NET NuGet Trusted Publishing with GitHub Actions
Publishing NuGet packages has traditionally required one uncomfortable compromise: a long-lived API key had to exist somewhere in the …

Mar 09, 2026 · 7 min read
C# 15 Unions: Unions are finally in .NET
After many years of workarounds, design discussions and library-level substitutes, unions are finally becoming a first-class part of C#. The …

Mar 02, 2026 · 19 min read
Unio: High-Performance Discriminated Unions for C#
C# is a powerful language, but there is one road it has not yet fully paved: native discriminated union types. Developers have been working …
Let's Work Together
Looking for an experienced Platform Architect or Engineer for your next project? Whether it's cloud migration, platform modernization or building new solutions from scratch - I'm here to help you succeed.

Comments