Yes you can buy a domain and use it after setting up a free website BUT if your going to be printing anything with your domain on it (price lists, leaflets, vouchers, posters, business cards etc...) then you are better off buying the domain name before going to print.
If you just want a website up & running for people to find you via a google search etc... then you can go with the free domain name then buy a domain at a later date.
Domain names are not that expensive though. Mine cost me approx £9 for 2 years from 123reg.
I use Weebly for my site & am happy with it. The only cost has been for the domain name.
Glamour Puss - Mobile Tanning Waxing Merthyr Tydfil