I have a networking program, that often sends very large tables of data from the server to the client.. when i recently tested it, it ran very slow..

i am currently using .send with the tcp client, and .write with the stream.
would it run faster using async sends .BeginWrite ? and would it possibly come back in muddled up order? should i perhaps use two sockets, or would this just make them both go half the speed and have no benefit?

any suggestions how this could go faster? (UDP is not an option)