полностью, по мере поступления байтов пишется в память и только как он (поток) полностью закачался есть возможность сохранить его в файл (событие OnMsgReceive). Соответственно сами понимаете, что получается при отправке 50-ти МБ файла. На это есть какие-то причины или просто плохая реализация?