C# .NET 10 and MAUI Cross-Platform Engineering
ASP.NET Core services and MAUI clients on .NET 10 — Xamarin migrations, field-force apps, and Azure-native enterprise tools from a single C# codebase.
I build cross-platform applications in C# on .NET 10 — ASP.NET Core for the services and backends, MAUI (the Xamarin successor) for iOS, Android, Windows, and macOS clients from a single codebase. One language, one toolchain, four platforms, one staffing plan.
The work falls into three shapes: new MAUI clients on a .NET 10 backend, migrations off Xamarin.Forms before Microsoft retires the runtime, and internal enterprise tools for Microsoft shops that already run on Entra ID and SQL Server. All three share the same disciplined process and the same single engineer end to end.
What I ship
- MAUI clients. MVVM with the community toolkit, platform handlers where the framework defaults fall short, and a shared business-logic layer that the four platforms genuinely share.
- ASP.NET Core APIs. Web API and minimal API endpoints, OIDC and JWT authentication, OpenAPI documents that match the running service, and gRPC where the wire format earns the complexity.
- Xamarin-to-MAUI migrations. SDK conversion, handler and renderer rewrites, dependency-injection refactors, NuGet trim, and CI pipeline updates — a clean exit from a runtime that Microsoft has already wound down.
- Background workers and hosted services. Long-running processors, scheduled jobs, message-queue consumers, and the observability hooks to verify they are actually running in production.
- Azure-native deployment. App Service, Container Apps, Key Vault, Application Insights, and infrastructure-as-code that a second engineer can read without a meeting.
Where it fits
Field-force and inspection applications
HVAC, energy, logistics, and military-adjacent operations that need offline-capable clients in the truck and a synchronized service in the cloud. MAUI handles the four platforms; the shared layer handles the domain logic; the backend handles authoritative state and conflict resolution when the device finally finds signal.
Xamarin.Forms lift-and-shift
If your application is still on Xamarin.Forms in 2026, the runtime has been out of mainstream support since 2024 and your CI pipeline knows it. I migrate the project to MAUI on .NET 10, rewrite custom renderers as handlers, audit and replace deprecated NuGet packages, and hand back an application that builds on a current Visual Studio without ceremony.
Internal enterprise tools for Microsoft shops
If your identity provider is Entra ID, your database is SQL Server, and your deployment target is App Service or Container Apps, .NET 10 is the path of least friction. I build line-of-business tools that fit the stack you already operate rather than asking your platform team to learn a new one.
Why this stack, for these jobs
One codebase across iOS, Android, Windows, and macOS means one hiring plan, one bug tracker, and one set of release notes. Parity across platforms is a build configuration, not a separate native team to staff and synchronize. For organizations already standardized on C# and Azure, the marginal cost of adding mobile and desktop clients drops to engineering hours rather than headcount.
.NET 10 carries a long Microsoft service horizon, which matters for regulated buyers planning multi-year application lifecycles. The pairing with Entra ID, Key Vault, and Application Insights gives auditors something concrete to point at when they ask about identity, secrets, and observability.
How I work
Migrations begin with a written inventory: every project in the solution, every NuGet package and its current support status, every custom renderer and what it does, every CI step. I deliver the inventory and a phased migration plan before touching the code. Phases ship behind feature flags where the application supports it; otherwise on a branch with a working build at every checkpoint. The principal carrying the work is described in detail on the about page.
New builds follow the same plan-first discipline. Two-week sprints, working demo at the end of each, Git history you can read, tests that actually run in CI, and a deployment runbook that a second engineer can execute.
Engagement model
Discovery is one to two weeks for new builds, two to three weeks for migrations off Xamarin. Implementation runs in two-week sprints with weekly checkpoints. Handover includes the running application, the test suite, the IaC, the runbook, and a 30-day support window after launch. To scope a MAUI build or a Xamarin migration, get in touch.
This is the engineering arm of an AI consulting practice. If your roadmap pairs a strategy review with a MAUI build or a Xamarin migration, the same principal carries both.