A computer-implemented method comprising: receiving a request from a computing device for a virtual desktop instance, the request identifying a user of the computing device, the computing device including a local data store; identifying a first virtual desktop instance corresponding to the request; attaching a first desktop store to the first virtual desktop instance over a network, the first desktop store including a desktop profile for the user and one or more folders including user content, the first desktop store being different from the local data store, wherein the desktop profile is useable to configure a virtual desktop instance for the user by setting one or more of a desktop background, a screen saver, a desktop layout, pointer preferences, and sound settings; providing, to the computing device, access to the first virtual desktop instance customized according to the desktop profile for the user and configured to store changes to user content to the one or more folders stored in the first desktop store; writing changes to the user content made by the first virtual desktop instance to the one or more folders stored in the first desktop store; replicating the user content and desktop profile in the one or more folders stored in the first desktop store to a second desktop store, the second desktop store being different to the first desktop store and the local data store; writing changes to the user content made by the first virtual desktop instance to user content stored in the second desktop store; and responsive to an event associated with the first desktop store, detaching the first desktop store from the first virtual desktop instance and attaching the second desktop store over the network to the first virtual desktop instance, wherein the event is indicative of a failure of the first desktop store. receiving a request from a computing device for a virtual desktop instance, the request identifying a user of the computing device, the computing device including a local data store; identifying a first virtual desktop instance corresponding to the request; attaching a first desktop store to the first virtual desktop instance over a network, the first desktop store including a desktop profile for the user and one or more folders including user content, the first desktop store being different from the local data store, wherein the desktop profile is useable to configure a virtual desktop instance for the user by setting one or more of a desktop background, a screen saver, a desktop layout, pointer preferences, and sound settings; providing, to the computing device, access to the first virtual desktop instance customized according to the desktop profile for the user and configured to store changes to user content to the one or more folders stored in the first desktop store; writing changes to the user content made by the first virtual desktop instance to the one or more folders stored in the first desktop store; replicating the user content and desktop profile in the one or more folders stored in the first desktop store to a second desktop store, the second desktop store being different to the first desktop store and the local data store; writing changes to the user content made by the first virtual desktop instance to user content stored in the second desktop store; and responsive to an event associated with the first desktop store, detaching the first desktop store from the first virtual desktop instance and attaching the second desktop store over the network to the first virtual desktop instance, wherein the event is indicative of a failure of the first desktop store.