To create a website you need 3 things
Domain name or site's web address is the important part of a site. For each top level domains( like .com, .net, .in, .us etc) there are authorized registrars through which domain can be registered for required number of years(minimum 1 year to max 10 years). For common top level domains like (.com . org, .net ) the authorized registrars can be found in this country wise list http://www.internic.net/origin.html . So first you need to find the registrar from where you need to register the domain. If you prefer local payments options like bank check you may have to choose a registrar from your country. Pricing vary a little between registrars and it is usually less than $15 USD/year . After you find the registrar, you need to search for a domain name for your site which is not yet registered. Once decided you can register and make the payment to have the domain registered in your name.
Registering a domain means you get control of the domain but it does not give you any web space to host your site. You have to get the web space separately and then link your domain name to the web space. How to link domain with you web hosting ?When registering a domain name you also get a domain control panel from the registrar website. In this control panel, you can point your domain to any web hosting by providing the nameserver address of the web host. (usually the name server address will be like ns1.hostingprovider.com, ns2.hostingprovider.com ) . After you enter your name server address of your hosting into domain control panel, it may take few hours (maximum 48 hours) for the actual pointing from your domain to web hosting to work. This is the time taken for data from each registrar to get propagated across domain name servers across the world.
Important : it is always recommended that you register the domain with any authorized registrars for that domain. Some hosting companies give free domain with their hosting plans but your control of the domain will be as long as you host with them. So in the future if you decide to host with another host you will loose your domain also.
About free sub domains : In case you are not ready to go for a paid domain now (like yoursitename.com), to get a quick start on website creation, you can opt for sub domains which are offered free by many sites. Sub domain sites will have address of the type (yoursitename.FreeSubDomainProvider.com). One free such sub domain provided is www.co.cc, they provide free addresses like yoursitename.co.cc (there are both free and paid subdomains at co.cc).
Next step is to signup for web hosting from any web hosting providers. There are paid as well as free web hosting available. When you signup for a web hosting plan you usually get these details
There is lot of web hosting providers and it can be confusing to choose the ideal host. When choosing web hosting you will come across these terms
You can either choose a paid web hosting provider or use a free hosting provider like www.awardspace.com . Freehosting do have limitations like limit on file size, bandwdith etc but it is ideal for those learning to create sites and till you find a suitable paid hosting.
This site is hosted with Hostgator from Septemper 2007 onwards. You can try hostgator hosting for only $0.01 USD for first month using hostgator coupon code .
Now that you have the domain and web space required for your website, next step is to create actual files of your website and upload it to your web space.
First you have to create the site in a local folder in your pc . If you are not a designer, you need not worry about designing the pages, you can find lot of free templates in sited like www.oswd.org or www.openwebdesign.org . Just find the suitable template and edit the template in any text editor(like notepad) to create the pages of your site.
First page to create in your site would be the index page ( index.htm) , this would be the default page, which means the page that is displayed when only your website address is typed in browser. All other pages of your site are linked from this index page. You may need to know the basic structure of a html file , text formating tags and other html tags.
Once you have the index.htm of your site you can copy and rename it to create other pages of your site and then change the contents of each pages. To test the site you created, open the local index.htm in your browser and check it is working ok.
Once the site is ready locally in your pc, you need to upload the contents to the web folder which your hosting provider has given. One free ftp software is filezilla.
See these tutorials on how to use filezilla to upload the files