RCWRCW IT TrainingFree hands-on labs & simulators← Back to home
Microsoft Azure · AZ-140 simulation · Exam practice

Azure Virtual Desktop (WVD) Simulation: AZ-140-Style Question, Answer and Explanation

Attempt the lab like you would on the real exam — build a pooled host pool, an app group, a workspace and FSLogix profile storage — then check the click-by-click answer and the reasoning the examiners are testing.

Published August 29, 2026 · RCW IT Training · Exam AZ-140 (Azure Virtual Desktop, formerly Windows Virtual Desktop)

Looking for “WVD 120”? That is the older community shorthand for this certification — the current Microsoft exam is AZ-140: Azure Virtual Desktop (formerly Windows Virtual Desktop). On the real exam, “simulation” questions give you a live Azure portal lab and judge the state of your environment, not multiple choice. This page mirrors that format exactly.

The simulation scenario

Contoso, Ltd. is piloting Azure Virtual Desktop for 400 sales users. You are the Azure administrator. The lab environment has already been provisioned for you:

ResourceProvided in the lab
Subscription / resource groupcontsub-avd / rg-contoso-avd
RegionEast US 2 (use the region shown in your lab window)
Networkingvnet-avd (10.20.0.0/16) with subnet snet-sessionhosts (10.20.1.0/24)
IdentityEntra ID tenant contoso.onmicrosoft.com joined to AD DS contoso.com; group AVD-Users with five pre-created members
StorageStorage account stcontosoprofiles (Standard, LRS) — no file share yet
LicensingMicrosoft 365 E5 assigned to all pilot users

Requirements: a pooled host pool named hp-avd-01 running the Windows 11 Enterprise multi-session image with two session hosts, a desktop application group named dag-avd-01 for the AVD-Users group, a workspace named ws-avd-01, and FSLogix profile containers on Azure Files so users keep their profile on every session.

Your tasks — attempt before you reveal

In the simulator you would perform these directly in the Azure portal. Try to complete all five, then compare with the answer.

Task 1

Create the host pool and session hosts

Create hp-avd-01: a pooled host pool, Desktop preferred app group type, Breadth-first load balancing, max 10 sessions per host. Add two session hosts from the Azure Marketplace image Windows 11 Enterprise multi-session, version 23H2 (Gen 2), size Standard_D2s_v5, name prefix hp-avd-01, joined to contoso.com, deployed to vnet-avd / snet-sessionhosts with availability zone 1.

Task 2

Create the application group and assign users

Create dag-avd-01 of type Desktop inside hp-avd-01, then assign the AVD-Users group. Publishing a desktop needs no apps to be added.

Task 3

Create the workspace and register the app group

Create ws-avd-01 in the same resource group, register dag-avd-01 with it, and confirm the desktop plan is selected.

Task 4

Enable FSLogix profile containers on Azure Files

On stcontosoprofiles, create an SMB share named profiles, grant AVD-Users Storage File Data SMB Share Contributor, then configure session hosts (group policy) to store user profiles in \\stcontosoprofiles.file.core.windows.net\profiles.

Task 5

Verify the deployment

Sign in to client.wvd.microsoft.com as a pilot user, confirm the Contoso Desktop appears, and check that an FSLogix profile folder is created for the user.

Answer — how to complete each task

Task 1 — Host pool and session hosts
  1. Portal → Azure Virtual Desktop → Host pools → + Create. On Basics: subscription, rg-contoso-avd, name hp-avd-01, region East US 2, validation environment: No.
  2. Host pool type: Pooled; preferred app group type: Desktop; load balancing: Breadth-first; max session limit: 10.
  3. On Virtual machines, choose “Yes” to add VMs. Image: Windows 11 Enterprise multi-session, version 23H2, Gen 2.
  4. Size: Standard_D2s_v5; number of VMs: 2; name prefix: hp-avd-01; availability zone: 1.
  5. Networking: vnet-avdsnet-sessionhosts; join type: Active Directory (contoso.com) with a domain-join account; skip the (optional) Entra ID/Intune join. Finish the wizard — the template creates the VMs, joins the domain and joins them to the host pool automatically.
Task 2 — Application group and user assignment
  1. Open hp-avd-01Application groups → + Create. Name dag-avd-01, type Desktop (only a RemoteApp app group needs applications added).
  2. Inside dag-avd-01Assignments → + Add → add the AVD-Users group. Without this assignment users see nothing in their feed.
Task 3 — Workspace
  1. Azure Virtual Desktop → Workspaces → + Create → name ws-avd-01, rg-contoso-avd, region East US 2.
  2. In Application groups, select dag-avd-01 (this “registers” the app group — the step people forget) and confirm the Desktop plan is ticked, then create.
Task 4 — FSLogix profile storage (both permission layers!)
  1. Open stcontosoprofilesFile shares → + File share → name profiles, quota (e.g. 50 GiB) → create.
  2. Azure RBAC layer: on the share (Share → Access control (IAM) → + Add role assignment) grant AVD-Users the built-in role Storage File Data SMB Share Contributor. This role controls who can reach the SMB share at all.
  3. NTFS layer: if the share is new, grant the same group Modify on the share root (run once with storage credentials or set it via the AAD Kerberos setup / icacls on the first mount). Both layers must allow access or FSLogix fails.
  4. On the AD side, on any domain-joined session host (or via GPO on contoso.com): Computer Configuration → Administrative Templates → System → User Profiles.
  5. Enable FSLogix Profile ContainerEnabled, and set Profile path to \\stcontosoprofiles.file.core.windows.net\profiles (FSLogix appends the %username% folder automatically from v2, or use \profiles\%username%). Apply the GPO, run gpupdate /force on the session hosts.
Task 5 — Verification
  1. Browse to the web client, sign in as a pilot user: the feed shows Contoso Desktop.
  2. Check profiles in the storage account — a folder per user (e.g. azureuser1) with Profile_*.vhdx proves FSLogix is active.
  3. On the session host, %ProgramData%\FSLogix\Logs\Profile\ shows a healthy connection log.
# FSLogix quick health check on a session host Get-Item 'HKLM:\SOFTWARE\Policies\FSLogix\Profiles' | fl * Get-ChildItem \\stcontosoprofiles.file.core.windows.net\profiles # Config registry values you should see: Enabled = 1 VHDLocations = \\stcontosoprofiles.file.core.windows.net\profiles

Explanation — why each step matters

Pooled host pool + Desktop app group is the default recipe

A pooled pool lets many users share few multi-session VMs (that is the whole value of the multi-session SKU); personal pools give users their own single-session VM. With Breadth-first load balancing the broker places each new session on the least-loaded host, and FSLogix keeps the user experience identical on every host. A Desktop app group publishes the full desktop and needs no application list; only RemoteApp groups require you to add apps. Even a perfect app group shows users nothing until it is both assigned to users and registered to a workspace — the classic “why is my feed empty?” failure.

Multi-session image and licensing

Windows 11 Enterprise multi-session is published only in Azure Marketplace (Gen 2, re-signed images), which is why the task specifies it. It is the only Windows client SKU that permits concurrent signed-in sessions on one VM. Access rights come from Microsoft 365 E3/E5 (per user) or Windows VDA per-user licensing — the lab gives you M365 E5, so no extra purchase is needed.

FSLogix needs two permission layers, not one

This is the most-tested trap in AZ-140: Azure RBAC (Storage File Data SMB Share Contributor/Reader) governs access to the SMB share itself, while NTFS ACLs govern what a user can do inside it. Granting only one produces “profile failed to load” or empty profile containers. Also remember Azure Files SMB for Entra-joined/domain-joined clients needs Kerberos enabled on the storage account (or the ADDS/Kerberos key configuration) for seamless sign-in — a common second failure point. FSLogix containers, unlike roaming profiles, mount only during sign-in and work with both pooled and personal pools, and they are the reason apps like Outlook don’t rebuild a profile on every host.

Hosts, region and connectivity

Session hosts must sit in the same Azure region as the host pool and in a subnet with a route to the domain controller (or be Entra-joined). Users never RDP to the session host IP: the Azure Virtual Desktop client connects outbound over 443 to the Azure Virtual Desktop service (feed, gateway). So no inbound 3389 rule is needed on the NSG — a nice checking point when a lab asks “is the session host reachable?”. Use a validation environment for a pilot; roll out updates to it before production hosts.

Verification is part of the score

Simulators often grade the state of the environment. Before you finish: the app group is assigned to users, the workspace shows the published resources, the host pool list shows two healthy VMs (the Adding/Updating state must clear), and the FSLogix share contains a Profile_*.vhdx. Health checks in the Azure Virtual Desktop overview page and Get-AzWvdSessionHost in Azure Cloud Shell confirm readiness.

Scoring checklist the lab is checking

CheckPass condition
Host pool existshp-avd-01, pooled, Desktop, breadth-first, max 10
Session hosts2 × Standard_D2s_v5, Win 11 Enterprise multi-session 23H2, in snet-sessionhosts, status Running / healthy
App group + assignmentdag-avd-01 has AVD-Users assigned
Workspace registrationws-avd-01 contains dag-avd-01 (Desktop plan)
FSLogix storageShare profiles exists; RBAC and NTFS allow AVD-Users; GPO enabled with UNC path
User experiencePilot user sees the desktop in the web client; profile VHDX is created

Common mistakes on this exact question

Mistakes that lose marks

1. Creating the app group but never registering it to a workspace — the feed stays empty. 2. Choosing Windows 11 Enterprise single-session (or a Windows Server image) for a pooled pool — no multi-user support. 3. Assigning only Azure RBAC or only NTFS rights for FSLogix, never both. 4. Setting the workload profile share at container root but forgetting the %username% path or GPO scope so only the admin machine applies it. 5. Deploying session hosts in a different region than the host pool. 6. Forgetting M365/Windows VDA licensing is a prerequisite, not an exam task — mention it in the explanation.

Key takeaway: An Azure Virtual Desktop deployment is a chain — host pool → session hosts → app group → user assignment → workspace registration → profile storage with both RBAC and NTFS permissions. Break one link and users see either an empty feed, an unreachable desktop, or a profile that resets on every sign-in. In the lab, verify end-to-end from a real user’s sign-in before you submit.