Azure Virtual Machine
Azure Web App
Infrastructure as a service, if you need to have full control over your computing environment.
Platform as a service, it allows you to integrate the app without managing the underlying infrastructure.
Uses an OS image.
Uses a runtime stack.
Stateful or stateless
You need to use VM scale sets to support autoscaling in virtual machines.
Autoscaling is a built-in service in App Service.
1000 nodes per scale set for platform image and 600 nodes per scale set for custom image
20 instances and 100 with App Service Environment
Distribute the incoming network traffic using Azure load balancer.
Load balancing is integrated into App Service.
The supported architecture styles are N-Tier and Web-Queue-Worker.
The supported architecture styles are N-Tier and Big compute (HPC).