A good host will help you through it. I believe that if you give your new host your access information for your current site they will download your files and simply upload them on their servers.
Just ask your new host the best way to go about it. If they don't respond look for a new host.
I switched to hostgator from a UK host and they have be excellent. Hosting was up within minutes of opening the account and they transferred my entire wordpress site (and domain) and had it all up and running in less than 12hrs with emails telling me progress.
bluehost.com and justhost.com are now run by the same company. I use justhost.com and one of my good photo pals uses bluehost. They are both great host sites and offer AWESOME prices.