Given the fact that the amounts of data that are being sent across clients are not really big, it seemed a good idea to make the server broadcast a dual data set - a collection of indicators that are used by both the phone and desktop clients. The desktop client is going to process the camera direction sent by the phone, and the phone will adjust the character position according to the movement generated by the Kinect-driven desktop client. private static void Send ( Socket handler ) { // The generalized string broadcasted by the server does not contain a platform // identifying prefix (p or c) string data = string .