• (local) would be a SQLServer term that referrs to the current machine.  I'd expect it to use the preferred connection method (TCP/IP or Named Pipes depending on the install).

    localhost is a TCP/IP term, but that doesn't force it to use TCP/IP instead of Named Pipes (just for fun)

    I expect that the reason that it's not working on the Dev machine is that the sqlserver on the dev machine has either 1) TCP/IP or Named Pipes turned off, or the more likely is that there is a firewall on the dev machine (this includes RPC/Named Pipes patches that microsoft release weekly).

    All-in-all you should rather be using (local) as it will work more often.