In many cases good internet providers give some webspace. I'm using f2s.com(UK) which give me 200MB, only problem is name of your site, but that can be simple changed you just buy domain name and transfer to your existing account.
You may want sign up for free hosting service to test if your site looks good on "real-world". If it doesn't then you can keep on improving it. Try also on diferrent browser apart of IE, such as AOL, firefox, opera, you name it. Try www.1asphost.com.
Many web hosting providers provide free domain name when signup. Make sure you are the owner of the domain name they register for you and can transfer it away (with small fee in many cases). Also make sure the domain name renewal fee is at accpetable level (less that £8 per year for .com and £5 for .co.uk). Always check the spec before comparing the prices. If you plan to use server side scripting in the near future, then get those with php or asp supported.
For domain name, you can registered elsewhere (which normally cheaper to renew) and pointing the DNS to your hosting provider name servers. I used www.uk-plc.net. This will make sure you can move around without tying the domain name with the hosting provider.
Uploading file to server can be done via FTP or through the control panel. Once you signing up for a hosting service, they will provide you all the information.
Finally, if you want to sell products at your site and accept online transactions (add ecommerce capability to the site), check my sites quoted below. :mrgreen: