Skip to content

Stayrony/MAUI-Developer-Roadmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

.NET MAUI Developer Roadmap

PRs Welcome License: CC BY-NC-SA 4.0

Roadmap to becoming a .NET MAUI developer in 2026.

Below you can find a chart demonstrating the paths that you can take and the libraries you would want to learn to become a .NET MAUI developer. It is meant as a tip for everyone who asks, "What should I learn next as a mobile & desktop .NET developer?"

⚠️ Coming from Xamarin? Xamarin reached end of support on May 1, 2024. .NET MAUI is its direct successor and the framework you should be learning today. This roadmap is the modernized version of the classic Xamarin Developer Roadmap. Most of your Xamarin knowledge (C#, XAML, MVVM, platform concepts) carries over — see Microsoft's Xamarin → .NET MAUI migration guide.

Disclaimer

The purpose of this roadmap is to give you an idea about the landscape. It will guide you if you are confused about what to learn next, rather than encouraging you to pick what is hip and trendy. You should grow some understanding of why one tool would be better suited for some cases than another — and remember that hip and trendy does not always mean best suited for the job.

Give a Star! ⭐

If you like or are using this project to learn or start your solution, please give it a star. Thanks!

Roadmap

Roadmap

An editable mind-map is available in maui-developer-roadmap.xmind (open with XMind).

Resources

1. Learn the Prerequisites

  • C# — the language of the entire .NET ecosystem
  • .NET fundamentals — the SDK, dotnet CLI, project files (SDK-style .csproj), NuGet
  • Understand the difference between .NET (the unified platform, currently .NET 9 / .NET 10) and the legacy .NET Framework

2. General Development Skills

  • Learn Git, create a few repositories on GitHub, share your code with other people
  • Know the HTTP(S) protocol, request methods (GET, POST, PUT, PATCH, DELETE, OPTIONS)
  • Don't be afraid of using search engines and AI coding assistants — but verify what they tell you
  • Learn the basics of CI/CD
  • Application settings & configuration (appsettings.json, secrets, environment-specific config)
  • Read a few books about algorithms and data structures

3. C#

4. XAML

5. .NET MAUI Fundamentals

6. UI Controls & Interaction

7. UI Component Libraries

Ready-made control suites and UI kits save you from building complex controls (charts, data grids, schedulers) from scratch.

8. Styling & Theming

9. Resources: Fonts, Images & App Icons

10. MVVM Fundamentals

11. MVVM / App Frameworks

  • CommunityToolkit.Mvvmrecommended default. Observable properties and commands with minimal boilerplate via source generators ([ObservableProperty], [RelayCommand])
  • .NET MAUI Community Toolkit — controls, converters, behaviors, MediaElement, popups. Remember to call .UseMauiCommunityToolkit() in MauiProgram.cs
  • Prism — full-featured app framework (modularity, navigation, dialogs) with MAUI support
  • ReactiveUI — composable, reactive (Rx) MVVM framework
  • MVVMCross — mature cross-platform MVVM framework
  • MVU / reactive alternativesComet and MauiReactor (C# Model-View-Update), Fabulous (F#)

12. App Architecture

  • MAUI enterprise app patterns — Microsoft's reference architecture (eShop)
  • Clean Architecture — separation of concerns, dependency rule
  • Project & folder structure, feature-based organization
  • Sharing code across projects (Core/domain layer, .NET Standard/shared libraries)
  • State management & the repository/service patterns

13. Hybrid Web (Blazor & HybridWebView)

  • What are hybrid apps? — hosting web UI inside a native MAUI shell
  • Blazor Hybrid — build UI with Razor components running in a BlazorWebView, sharing code with your web app
  • .NET MAUI Blazor apps
  • HybridWebView (.NET 9+) — host arbitrary HTML/JS/CSS with two-way C# ↔ JavaScript messaging; use it to reuse an existing web UI (React, Angular, Vue) without Blazor
  • Great for teams with existing web/Blazor skills and shared web + native codebases

14. API Clients

  1. REST
  2. GraphQL

15. Data Access

  1. Local databases
    • SQLite-net — lightweight ORM over SQLite
    • EF Core — full-featured ORM, works with SQLite on-device
    • LiteDB — a .NET NoSQL document store in a single file
  2. Device storage (built into MAUI Essentials)
  3. Caching
  4. Cloud / Backend

16. Authentication

  • Biometric authentication — fingerprint / Face ID / Touch ID (via community plugins such as Plugin.Fingerprint)
  • WebAuthenticator — built-in OAuth browser flow (MAUI Essentials)
  • MSAL.NET — Microsoft Entra ID / Azure AD authentication
  • Social sign-in: Google, Apple, Facebook, Microsoft (via OAuth/OIDC + WebAuthenticator)
  • Sign in with Apple — required by Apple if you offer other social logins
  • OpenID Connect libraries: IdentityModel.OidcClient

17. Security

  • Secure Storage — never store secrets in plain preferences
  • OWASP MASVS — the mobile app security verification standard
  • Certificate / SSL pinning — protect against MITM attacks
  • Root / jailbreak detection
  • Code protection — trimming & obfuscation
  • Secrets management — keep API keys out of source; use a backend proxy where possible

18. Media

19. Maps & Location

  • Map control (Microsoft.Maui.Controls.Maps) — pins, polygons, map types
  • Geolocation — current position & continuous updates (MAUI Essentials)
  • Geocoding — address ↔ coordinates
  • Geofencing (via platform APIs)

20. Real-Time Communication

  • SignalR — real-time server → client messaging
  • gRPC — high-performance RPC (including gRPC-Web)

21. Logging

22. Testing

  1. Unit Testing
    • xUnit — popular .NET unit-testing framework
    • NUnit — long-standing unit-testing framework
    • TUnit — modern, source-generated test framework
  2. Mocking
  3. Behavior (BDD)
    • Reqnroll — BDD framework using the Gherkin specification language
  4. UI / E2E Testing
  5. Blazor Hybrid testing
    • bUnit — testing Razor components

23. Debugging, Diagnostics & Memory

24. Crash Reporting & Analytics

25. Payment Gateway

26. Push Notifications

  1. Remote
  2. Local

27. Background Work

28. Artificial Intelligence (AI)

  1. On-device ML
  2. LLMs & Generative AI
  3. Augmented Reality
  4. OCR / Vision

29. Advertising

30. App Distribution

  1. AndroidPublish to Google Play (AAB), Amazon Appstore
  2. iOSPublish to the App Store via App Store Connect
  3. WindowsPublish to the Microsoft Store (MSIX)
  4. macOSPublish a Mac Catalyst app
  5. Beta testing: TestFlight (iOS), Google Play internal testing

31. CI/CD

32. Advanced

  1. Native interop
  2. Cross-platform

33. Tools

34. Game Engine

  • MonoGame — free C# framework for cross-platform games
  • For richer needs, a dedicated engine like Godot (C# support) or Unity is the practical choice

35. SOLID

36. Design Patterns

37. Community & Learning Resources

Wrap Ups

If you think the roadmap can be improved, please open a PR with any updates and submit any issues. This is a living document — star the repository to revisit.

Migrating an existing Xamarin app? Start with Microsoft's Xamarin → .NET MAUI migration guide.

Inspired by the original Xamarin Developer Roadmap and the ASP.NET Core Developer Roadmap.

Contribution

Want to contribute? We encourage community feedback and contributions. Please follow our contributing guidelines.

License

License: CC BY-NC-SA 4.0

About

Roadmap to becoming a .NET MAUI developer in 2026 — the modernized successor to the Xamarin Developer Roadmap.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors