The following environment variable allows individual users in a Citrix environment to launch ArcGIS Desktop with the license level of their choice:
Desktop Advanced
ESRI_SOFTWARE_CLASS=Professional
Desktop Standard
ESRI_SOFTWARE_CLASS=Editor
Desktop Basic
ESRI_SOFTWARE_CLASS=Viewer
This overrides the SOFTWARE_CLASS registry key for the user that sets it as an environment variable before launching ArcMap. When ArcMap.exe is launched, it will become Desktop Basic, Desktop Standard, or Desktop Advanced (and check out the appropriate license).
The use of this variable overrides the currently configured license level in ArcGIS Administrator, thereby allowing any users of a Windows Terminal Server/Citrix configuration with a single installation of ArcGIS Desktop to switch to any desktop license level they have available licenses for. This variable can be set either in the user's profile or in a batch file that first sets the variable, then launches ArcMap. The batch file can then be published as an application.