Blumey just got done explaining why speed matters for your sites. He also gave you a few tips on how to get it. I'm going to give you some more technical tips.
Use External CSS
Using CSS can be a great way to clean up your html and make it much more search engine friendly. It can also decrease your page load times. If you use an external CSS style sheet rather than en embedded style sheet, the user's browser will download the CSS once and cache it. For subsequent page loads, it won't need to download all of the style sheet info again. Depending on the complexity of your design, this can be a huge win. For example, on phpBB forums, the default template has all of the CSS embedded on the page. On every page load, that style info gets downloaded. If you extract that CSS into an external file, it's 7.5KB. With the embedded style sheet, that's 7.5KB plus whatever all of the content takes. That's not a huge deal for users with DSL or cable modems, but for people on dial up (and they are out there), that's an extra 2 seconds per page. With the external style sheet users will still need to grab the CSS on the first page load, but after that, they'll just be downloading your content. They'll get a better experience, and you'll have a smaller bandwidth bill.
To use external CSS, put something like this in the head section if your html:
<link href="http://www.example.com/style.css" type="text/css" rel="stylesheet"/>
Turn on http compression
This is something your web host has to do. All modern browsers and web servers support compression of http traffic. Html is very repetitive, and hence very compressible. The larger your page, the bigger the benefit you'll see. Let's take the main page of this blog as an example. Uncompressed, the page, not including graphics, is 54KB as of the time I wrote this. After running it through gzip, which is very similar to what a web server would do, it is down to 15KB - a savings of 39KB. That's 39KB saved per page load. For a dial up user, that would be nearly 10 seconds quicker. Sure, you'll use a little more cpu time on your host, but it's a miniscule amount. Compressing that html page was so fast that my timer program registered 0.00s. The time spent transferring the data after it's compressed will dwarf the time spent compressing it. This isn't something you can activate as a hosting customer. You'll have to ask your web host if they have it turned on. If you run your own server, look into mod_gzip or mod_deflate for Apache and HTTP compression in the IIS manager if you're on Windows hosting.
Keep Your Images Local
This may sound obvious, but if you're using images on your site, make sure they're hosted in the same place as your html. If you use images hosted on another server, when that server becomes slow, your site will become slow. It's also not polite to steal someone else's bandwidth by using images hosted on their server. Get permission to use the images, and host them yourself.
Don't Use Free Hosting
You get what you pay for. Free hosts are likely to have servers that are heavily loaded. That makes them slow. Tech support is also likely slow or non-existent. Spammers also like to use free hosting, so your site might get lumped in with a spam site. That won't necessarily make your site any slower, but it could cause the search engines to look at your site with suspicion.
If you follow these guidelines, you'll be well on your way to quick page loads and a good user experience.
Jon K.