Disclosed are various embodiments for performing cross-domain communication using messenger frames. One or more messenger frames are dynamically generated in response to determining that a message is to be sent from a first frame in one domain to a second frame in another domain in a client. The message is sent from the first frame to the second frame by embedding the message in addresses of the messenger frames. Code executing in the first frame and code executing in the second frame are restricted from direct communication in the client.