Azure Virtual Desktop terminology


This content applies to Azure Virtual Desktop with Azure Resource Manager Azure Virtual Desktop objects. If you're using Azure Virtual Desktop (classic) without Azure Resource Manager objects, see this article.

Azure Virtual Desktop is a service that gives users easy and secure access to their virtualized desktops and RemoteApps. This topic will tell you a bit more about the terminology and general structure of Azure Virtual Desktop.

Host pools

A host pool is a collection of Azure virtual machines that register to Azure Virtual Desktop as session hosts when you run the Azure Virtual Desktop agent. All session host virtual machines in a host pool should be sourced from the same image for a consistent user experience. You control the resources published to users through app groups.

A host pool can be one of two types:

  • Personal, where each session host is assigned to an individual user. Personal host pools provide dedicated desktops to end-users that optimize environments for performance and data separation.
  • Pooled, where user sessions can be load balanced to any session host in the host pool. There can be multiple different users on a single session host at the same time. Pooled host pools provide a shared remote experience to end-users, which ensures lower costs and greater efficiency.

The following table goes into more detail about the differences between each type of host pool:

Feature Personal host pools Pooled host pools
Load balancing User sessions are always load balanced to the session host the user is assigned to. If the user isn't currently assigned to a session host, the user session is load balanced to the next available session host in the host pool. User sessions are load balanced to session hosts in the host pool based on user session count. You can choose which load balancing algorithm to use: breadth-first or depth-first.
Maximum session limit One. As configured by the Max session limit value of the properties of a host pool.
User assignment process Users can either be directly assigned to session hosts or be automatically assigned to the first available session host. Users always have sessions on the session hosts they are assigned to. Users aren't assigned to session hosts. After a user signs out and signs back in, their user session might get load balanced to a different session host.
Scaling None. Autoscale for pooled host pools turns VMs on and off based on the capacity thresholds and schedules the customer defines.
Windows Updates Updated with Windows Updates, System Center Configuration Manager (SCCM), or other software distribution configuration tools. Updated by redeploying session hosts from updated images instead of traditional updates.
User data Each user only ever uses one session host, so they can store their user profile data on the operating system (OS) disk of the VM. Users can connect to different session hosts every time they connect, so they should store their user profile data in FSLogix.

App groups

An app group is a logical grouping of applications installed on session hosts in the host pool.

An app group can be one of two types:

  • RemoteApp, where users access the RemoteApps you individually select and publish to the app group. Available with pooled host pools only.
  • Desktop, where users access the full desktop. Available with pooled or personal host pools.

Pooled host pools have a preferred app group type that dictates whether users see RemoteApp or Desktop apps in their feed if both resources have been published to the same user. By default, Azure Virtual Desktop automatically creates a Desktop app group with the friendly name Default Desktop whenever you create a host pool and sets the host pool's preferred app group type to Desktop. You can remove the Desktop app group at any time. If you want your users to only see RemoteApps in their feed, you should set the preferred application group type value to RemoteApp. If you want your users to only see session desktops in their feed, you should set the preferred application group type value to Desktop. You can't create another Desktop app group in a host pool while a Desktop app group exists.

To publish resources to users, you must assign them to app groups. When assigning users to app groups, consider the following things:

  • We don't support assigning both the RemoteApp and desktop app groups in a single host pool to the same user. Doing so will cause a single user to have two user sessions in a single host pool. Users aren't supposed to have two active user sessions at the same time, as this can cause the following things to happen:
    • The session hosts become overloaded
    • Users get stuck when trying to login
    • Connections won't work
    • The screen turns black
    • The application crashes
    • Other negative effects on end-user experience and session performance
  • A user can be assigned to multiple app groups within the same host pool, and their feed will be an accumulation of both app groups.
  • Personal host pools only allow and support Desktop app groups.


If your host pool’s preferred application group type is set to Undefined, that means you haven’t set the value yet. You must finish configuring your host pool by setting its preferred application group type before you start using it to prevent app incompatibility and session host overload issues.


A workspace is a logical grouping of application groups in Azure Virtual Desktop. Each Azure Virtual Desktop application group must be associated with a workspace for users to see the remote apps and desktops published to them.

End users

After you've assigned users to their app groups, they can connect to an Azure Virtual Desktop deployment with any of the Azure Virtual Desktop clients.

User sessions

In this section, we'll go over each of the three types of user sessions that end users can have.

Active user session

A user session is considered "active" when a user signs in and connects to their remote app or desktop resource.

Disconnected user session

A disconnected user session is an inactive session that the user hasn't signed out of yet. When a user closes the remote session window without signing out, the session becomes disconnected. When a user reconnects to their remote resources, they'll be redirected to their disconnected session on the session host they were working on. At this point, the disconnected session becomes an active session again.

Pending user session

A pending user session is a placeholder session that reserves a spot on the load-balanced virtual machine for the user. Because the sign-in process can take anywhere from 30 seconds to five minutes depending on the user profile, this placeholder session ensures that the user won't be kicked out of their session if another user completes their sign-in process first.

Next steps

Learn more about delegated access and how to assign roles to users at Delegated Access in Azure Virtual Desktop.

To learn how to set up your Azure Virtual Desktop host pool, see Create a host pool with the Azure portal.

To learn how to connect to Azure Virtual Desktop, see one of the following articles: