Если цель состоит в том, чтобы заставить ваш сокет перестать слушать через X секунд, чтобы вы могли сделать что-то еще (например, проверить, закрывается ли приложение) и используете ли вы синхронные сокеты, тогда я бы рекомендовал установить Socket.ReceiveTimeout
до X количество секунд (умножить на 1000, поскольку Socket.ReceiveTimeout
в миллисекундах), а затем перехватить результирующее исключение, которое возникает по истечении времени ожидания.