1. A method of providing access to a desktop computing environment, the method comprising the steps of: (a) receiving, by a broker machine, a request from a client machine for access to the desktop computing environment, the request including an identification of a user of the client machine; (b) selecting, by a session management component, a virtual machine responsive to the identification of the user of the client machine that can provide the desktop computing environment and an operating system in which to execute the desktop computing environment; (c) selecting, by the broker machine, an execution machine providing a terminal services session in which a hypervisor executes to provide access to hardware resources required by the virtual machine; (d) launching, by the broker machine, the virtual machine by into the execution machine, the virtual machine executing the operating system; (e) launching, by the broker machine, the desktop computing environment into the executing operating system on the execution machine; and (f) establishing, by the broker machine, a connection between the client machine and the desktop computing environment via the terminal services session.