Hi Paul,
Welcome to the board. Hope we can help you.
Before I go on. let me state that adding an external hard drive will not make, nor help, the machine to run faster. What that does is to give you more room to store information, and also room for a backup (asked below). A memory upgrade (also explained below) will definitely help your machine run faster.
In any event, first of all, what is the reason for the upgrade? Is the machine running slow, and/or is the amount of space left on your internal hard drive low?
Secondly, a wise upgrade would be to add more memory to your machine. It can take up to 4 gigabytes of memory (two 2 gigabyte memory "sticks"). The procedure is not that difficult. Here is a link that you need to start from:
https://support.apple.com/kb/HT1423#2
If you have a 20" iMac then click on where it says "
iMac (20-inch, Early 2008)".
If you have a 24" iMac, then click on where it says
"iMac (24-inch, Early 2008)".
When you click on either one, you will go to a diagram with instructions on installing the new memory.
Regarding what type of memory, and where to get it, Other World Computing (OWC) is an excellent source. Here is a link that shows the memory and prices for your iMac ($59.95 is a good price):
http://eshop.macsales.com/item/Other World Computing/6400DDR2S4MP/
Third, it is always good to have an external drive. Without knowing why you specifically need a hard drive, it's difficult to recommend a size. But, Seagate brands of drives are always reliable, and in my experience, work good with Macs. There is the decision, though, as to how you want to connect the drive to the iMac. Your iMac has 3 USB 2.0 ports on the machine itself, one Firewire 800 port, and one Firewire 400 port. The fastest connection would be to the Firewire 800 port, but a Firewire 800 External Drive can be somewhat expensive. Connecting through one of the USB 2.0 ports would be the least expensive, but the slowest.
No matter which drive you purchase, and no matter which connection you use, it will need to be "prepared" for usage with your iMac. You would use the program called "Disk Utility" to do this (it's already on your machine). There are few steps that you would need to go through using this program.
It's probably best, at this point, for you to answer the questions I stated above before proceeding any further. Two more questions: what OS (Operating System) are you using? And, are you doing any backups of your machine? Hopefully you are, because a backup would be invaluable in case something goes "wrong" with your iMac.
In the meantime, I'll see what Seagate drives are available. It could also be useful if you could tell us where you are located. If it's somewhere in the US, and in or near a "decent sized" city, you could possibly purchase the hard drive from a local Best Buy. They actually have one of the best price matching policies going.