Введение в TCP в C#
TCP-соединение связывает две программы через сеть. Одна слушает адрес и порт. Другая подключается к этому адресу. После соединения между ними открыт поток байтов: что записали на одном конце, дойдёт до другого в том же порядке. Потерянный кусок протокол передаст снова.
У потока нет конвертов. Если отправить две короткие фразы подряд, на другом конце они могут прийти одним куском или двумя. Границу сообщения программа проводит сама: длиной, символом конца или отдельным заголовком.
Для проверки обе стороны часто запускают на одном компьютере и соединяют через локальный адрес. Соединение и порт нужно закрыть, иначе следующий запуск не сможет занять тот же порт.