Azure is the default cloud for many .NET shops
If you work in C#, chances are your next employer runs something on Azure—App Service, Azure SQL, Functions, or Kubernetes on AKS. We built this roadmap for Toolliyo students who ask which services to learn first and which certifications are worth the study time. Skip the "learn every service" trap; depth on a coherent stack beats shallow familiarity with fifty blades in the portal.
Stage 1: Foundations (2–3 weeks)
Accounts, subscriptions, and governance
Understand subscriptions, resource groups, tags, and cost management alerts. Create a dev subscription with spending caps. Use the Azure CLI and Azure PowerShell alongside the portal—you will automate everything later anyway.
Core compute for .NET
- Azure App Service — fastest path to host ASP.NET Core APIs and Blazor.
- Azure Container Apps — containers without managing full Kubernetes when you need scale-to-zero.
- Azure Functions — event-driven workloads, timers, queue triggers with isolated worker for .NET 8.
Deploy the same sample API to App Service and Container Apps. Compare pricing, cold start, and deployment workflow.
Stage 2: Data and storage (2 weeks)
Azure SQL Database
Provision serverless or provisioned tier, connect from EF Core, enable automatic backups, and review firewall rules. Learn elastic pools when you host multiple small databases.
Cosmos DB
Not for every app—but know when global distribution and flexible consistency matter. Try the EF Core provider or SDK for a read-heavy catalog with partition key on categoryId.
Blob Storage
User uploads, export files, static assets. Pair with SAS tokens and lifecycle policies. Your API should never stream large files through the web tier if blob storage can serve them directly.
Redis Cache
Session state, distributed cache for ASP.NET Core, rate limit counters. Measure hit ratio before assuming cache fixes performance.
Stage 3: Identity and security (1–2 weeks)
Microsoft Entra ID (formerly Azure AD) is central. Learn app registrations, delegated vs application permissions, and MSAL in .NET for calling Microsoft Graph or your own APIs. Implement managed identities so your App Service reaches Key Vault and SQL without stored passwords.
- Key Vault for secrets, certificates, and connection strings.
- Private endpoints for SQL and storage when compliance requires it.
- Defender for Cloud recommendations on a test subscription.
Stage 4: Integration and messaging (2 weeks)
Service Bus and Event Grid
Decouple order processing: API writes to a queue; worker Function completes payment capture. Event Grid for reacting to blob uploads or subscription lifecycle events.
API Management
When multiple clients consume your APIs: rate limits, API keys, OAuth validation, and revision management. Overkill for side projects; essential for partner integrations.
Stage 5: DevOps and observability (ongoing)
GitHub Actions or Azure DevOps pipelines: restore, test, publish, deploy to staging, swap to production. Enable Application Insights with adaptive sampling, live metrics, and distributed tracing across Functions and App Service.
Log Analytics queries (KQL) save hours in incidents: find failed dependencies, slow requests, and exceptions grouped by operation ID.
Stage 6: Kubernetes when you need it
AKS is not day-one for most .NET developers. Move when you need custom networking, sidecars, or portable workloads across clouds. Learn Deployments, Services, Ingress, and Helm charts for your API. Azure Container Registry stores images close to your cluster.
Certification path that matches hiring
- AZ-900 — cloud concepts; good baseline vocabulary.
- AZ-204 — developing solutions on Azure; aligns with .NET developer roles.
- AZ-400 — if you lean DevOps; pairs well with pipeline work above.
Certifications open doors but do not replace hands-on projects. Document a capstone: API on App Service, SQL, Key Vault, Functions worker, Insights dashboards, and IaC with Bicep or Terraform.
Bicep and infrastructure as code
Repeatable environments beat click-ops. Define resource groups, App Service plans, and SQL in Bicep modules. Parameterize dev vs prod SKUs. Store templates in repo and deploy from CI.
Cost habits
Shut down dev resources nightly, use reserved capacity when production stabilizes, and tag owners on every resource group. Unexpected bills teach Azure fast—usually once is enough.
Follow this roadmap in order, ship something at each stage, and you will interview as a .NET developer who can own a feature from Visual Studio to a monitored Azure deployment—not someone who only runs apps on localhost.