After seeing a number of issues about this, I realized that we needed to comment on this.
For SQL Express, all networking protocols except shared memory are disabled by default. There is a command line setup switch called DISABLENETWORKPROTOCOLS which is always set to 1 in SQL Express installations. You can override this by providing the switch DISABLENETWORKPROTOCOLS=0 to setup.exe on the command line. On an already installed machine, you can use SQL Computer Manager to configure the networking protocols.
The SQL Browser service is also not started by default *unless* the command line switch DISABLENETWORKPROTOCOLS=0 is passed to setup.exe. You can change SQL Browser’s startup type by using the Services control panel.
SQL Server Setup Development