There are limited situations where SQL Browser is needed, and many installations have the SQL Browser service set to Disabled.
If you only have 1 SQL instance on your server you never need SQL Browser.
If you use Kerberos security you never need SQL Browser. Kerberos forces the use of defined ports, and will provide the port number for connection if it is not in the application connection string.
* If you have multiple SQL instances on your server AND they use dynamic ports then you will need SQL Browser.
The use of dynamic ports for SQL instances is bad practice, because it can be impossible to provide firewall protection to the server because the ports that need to be opened in the firewall cannot be predicted. (OK, a software firewall can be configured after SQL starts, but hardware F/Ws cannot, and in any case you should not be poking new holes in your F/W on an ad-hoc basis.)
* If you have multiple SQL instances and you use defined ports BUT your applications do not give the port number in the connection string then you will need SQL Browser.
IMHO this is laziness. If you have defined ports for SQL Server then there is little reason why your applications cannot provide the port number in the connection string.
Original author: https://github.com/SQL-FineBuild/Common/wiki/ 1-click install and best practice configuration of SQL Server 2019, 2017 2016, 2014, 2012, 2008 R2, 2008 and 2005.
When I give food to the poor they call me a saint. When I ask why they are poor they call me a communist - Archbishop Hélder Câmara