1. A computer storage medium having computer-executable instructions, which when executed perform actions, comprising: receiving, at a server, an indication that a second application is to be executed, the server hosting a first application that has a first user interface that is provided to a client, the indication being generated in conjunction with interaction, on the client, with the first user interface; determining whether to execute the second application on the server or the client; if the second application is to be executed on the server, executing the application on the server and providing a second user interface corresponding to the second application to the client; and if the second application is to be executed on the client, instructing a client delegator executing on the client to execute the second application.