Для сообщений большого объема лучше всего использовать SocketAsyncEventArgs
. MS проделала огромную работу, чтобы сделать API как можно более легким по сравнению с памятью, поэтому GC придется запускать гораздо реже, чем при других подходах. IIRC - это единственный API, поддерживаемый Silverlight, поэтому, если это возможно, это единственный вариант.