Yeah, sounds like a DNS issue, which has been said many times already in the thread.
Basically, when you type in a website your machine first sends a DNS request to the DNS server which converts the URL to an IP address. Eg: www.google.com -> 74.125.129.147
If your DNS query is taking a long time, your connection will appear to hang loading a website. Once it gets the DNS response, it then loads the page from the IP address which happens nice and quick.
A quick test of this, open up a command prompt, and type "nslookup www.google.com". This will query the DNS server for the IP address of google.com. Then, type in the resulting IP address into your web browser (eg: »
74.125.129.147/). If this loads really fast, you have a DNS problem.
There are a few solutions to this, the quick and dirty way to do it is to go into your network settings in windows and specify a custom DNS server (like 8.8.8.8 and 8.8.4.4, which I always remember because they're super easy). This would have to be done on a machine by machine basis. Alternatively, go into your router settings and specify a custom DNS server there. It might be tricky to specify a custom DNS server in your router, as a lot of routers like to give out their own IP address as the server to DHSP leases, and then relay the queries themselves. If your router is causing the slow-down, this won't get around it, but if the problem is with your ISP's DNS then this will.