Клиентские API, такие как SqlClient, по умолчанию используют пул соединений , чтобы избежать издержек при разрешении имен, физическом сетевом соединении и аутентификации при каждом открытии соединения.Когда исходное соединение закрыто, оно добавляется в пул соединений, где его можно использовать повторно при следующем открытии другого соединения с такими же атрибутами.В этом случае клиентский API просто извлекает и не использует соединение из пула, избегая значительных накладных расходов на установление физического соединения.
При использовании именованного экземпляра пул соединений также исключает необходимость каждый раз запрашивать службу браузера SQL Server.соединение открыто, так что это объясняет ваши наблюдения.Я подозреваю, что если вы закроете и повторно запустите приложение после блокировки UDP-порта 1434, соединение SQL для именованного экземпляра не будет выполнено из-за сбоя запроса грамматики данных в браузере SQL Server при открытии начального соединения.