The usual answer to this is DNS resolution, or some problem with name resolution.
When you give the name of a website, your PC must communicate to a DNS server to resolve it to an actual IP address. If your ISP is having DNS server difficulties, this resolution process may take time. Subsequent resolutions may be quicker because the ISP DNS server has now cached the name.
If your DNS server exhibits very slow response, and consistently so, then contact your ISP to ask them to investigate.
Another source of slow DNS queries is how your PC may be resolving the location (IP address) of the web address you enter. From an command line window, you can use the NSLOOKUP command to test name resolution speed. Pick a website that you have never visited (perhaps from a newspaper advert or something), then type 'nslookup name.of.site.com'. The delay before the IP address of that site is returned should be no more than a few seconds, perhaps for some small and slow websites, the delay could be 5 seconds or so. If the delay is consistently much longer for new sites than these estimates, your PC may be trying to locate the name of the site via several methods before your ISP DNS server is queried.
(Windows) The cause for this is possibly the presence of a number of networking protocols and clients in your networking setup, which cause the PC to attempt name resolution first locally (using netbios), then via your ISP.
The local attempt will fail, but not until after a timeout period. If you are in doubt as to which protocols may be safely removed, ask a question in our forums.
Also read About DSL for lots more information