Skip to content
CAMPUX Cloud Bootcamp
Field notes · Compute
Azure IaaS vs PaaS

Azure IaaS vs PaaS: VMs vs managed services, and when to use each

By Captain O7 min read

Both run your app in the cloud. The difference isn't the app — it's how much of the stack underneath it becomes your problem. Get that line straight and the choice makes itself.

New to cloud? CAMPUX is a free, build-first course. Start here →

IaaS gives you a virtual machine: Azure runs the physical host, you own everything from the OS up — patching, scaling, availability. PaaS gives you a managed platform like App Service or Azure SQL: Azure also runs the OS, runtime and most of the scaling, and you bring mainly code or data. Choose IaaS when you need control of the whole stack or are lifting-and-shifting; choose PaaS when you're building new and would rather ship the app than babysit the server. The whole decision is a question about responsibility, not technology.

Every "which should I use" argument about Azure compute is really the same question: how much of the machinery do you want to own? IaaS hands you the keys to a server and everything that comes with owning one. PaaS hands you a platform and quietly keeps the server-owning to itself. Neither is better; they trade control for convenience in opposite directions.

The line: who owns what

Both models sit on Azure's physical datacenter, network and hypervisor — that's always Microsoft's. Above the hypervisor is where they split:

LayerIaaS (a VM)PaaS (a managed service)
Datacenter, network, hypervisorAzureAzure
Operating system + patchingYouAzure
Runtime / middlewareYouAzure
Scaling & availabilityYou (scale sets, LB, zones)Mostly Azure (built in)
Your app & dataYouYou

That's the entire distinction. With IaaS the OS, the patch cadence, the scaling rules and the availability design are yours to build and run. With PaaS, Azure does those and you meet it near the top of the stack with your code or your data.

What each looks like in Azure

There's also SaaS (a finished app like Microsoft 365) at the far end, and the boundaries blur — containers and AKS sit between the two — but VM-versus-managed-service is the decision you'll actually make most days.

When to choose IaaS (a VM)

When to choose PaaS (a managed service)

On cost — compare the whole bill

PaaS can look pricier per hour and still be cheaper overall, because it removes the staff-time of patching and running servers. IaaS can win on steady workloads with careful sizing — but you pay the management overhead in engineering effort. Compare total cost of ownership (compute plus people-time), not the compute line alone.

The honest answer: usually both

Real architectures mix the two. A managed Azure SQL database behind an app running on VMs; Functions calling a legacy system that has to stay on a VM; a container app in front of an IaaS backend during a migration. The useful instinct is default to PaaS and drop to IaaS only where a real requirement forces control — because every layer Azure runs is a layer you don't patch at 2am.

IaaS is a server you own in someone else's building. PaaS is a service you rent and never see the hardware. Pick by how much you want to own.

Questions people also ask

What's the difference between IaaS and PaaS in Azure?

IaaS gives you a VM — Azure runs the host, you own OS-up (patching, scaling, availability). PaaS gives you a managed platform (App Service, Azure SQL) — Azure runs the OS, runtime and most scaling, and you bring code or data. The split is who owns the layers above the hypervisor.

When should I use a VM instead of a managed service?

When you need OS control, are lifting-and-shifting unchanged, have legacy/licensing dependencies, or have a steady workload where fine sizing wins on cost. Prefer PaaS for new builds where Azure should handle patching, scaling and availability.

Is PaaS cheaper than IaaS?

Not always per hour, but often in total cost — it removes patching and server maintenance (real staff time). IaaS can be cheaper for steady workloads with careful sizing, at the price of management effort. Compare total cost of ownership.

What are examples of each in Azure?

IaaS: Virtual Machines, Scale Sets. PaaS: App Service, Functions, Azure SQL Database, Cosmos DB, Container Apps, the managed AKS control plane. Many architectures mix both.

Further reading — the Microsoft docs
Your next class · free
You've read the idea. Class 1 — What is Cloud? is where you build it, hands-on — no account needed.Start Class 1 →
Captain O
Founder & instructor · CAMPUX Cloud Engineering Bootcamp
Related: Availability sets vs zones · Azure SQL: Database vs MI vs SQL on a VM · Azure governance guardrails · 100 Days of Azure →