I recently started using SSMS 2012 and man was it slow when connecting to local databases. I thought perhaps it was a byproduct of it being written ‘on top of’ Visual Studio technology.
It turns out it was likely just some slow name resolutions. Be sure to use (local) when referring to the local machine/server. Credit goes to this forum post.