1. A method for providing remote access to a desktop computing environment provided by a virtual machine, the method comprising: (a) receiving, by a broker machine, authentication information associated with a user of a first client machine; (b) identifying, by the broker machine, based on the received authentication information, a desktop computing environment already associated with the user, the desktop computing environment i) being provided by a virtual machine selected by the broker machine and ii) executing in a first operating system provided by the virtual machine and launched by a hypervisor, the virtual machine executing in an execution machine selected by the broker machine, and the execution machine executing a the hypervisor i) providing access to hardware resources required by the virtual machine and ii) executing in a terminal services session provided by a second operating system, which is provided by the execution machine; and (c) establishing, by the broker machine, a connection between the first client machine and the desktop computing environment.