Anyone with an email address can get a free domain name and free hosting. There are many free web hosts available on the internet, just choose the one you like. And as for the free domain name.Visit http://www.co.cc and register an domain name. If its not registered by anyone you can get this domain for free and you can use it for free, if you want to use it for commercial purposes then you will have to pay $3 per year, otherwise its free.
Here are the steps to get a free domain name and free hosting: