Well In free web hosting, free web space can be used to practice programming.
For creating a small personal website free web hosting plan is great, but there are disadvantages with free web hosts :
1. They cannot afford to offer 24/7 or any support .
2. They do not allow FTP access and data transfer is not offered.
3. There can be a problem if one's website generates more traffic.
4. You will be under sub-domain resulting in poor search engine rankings most of the time.
5. Very few free web hosts offer control panel.
6. Some free web hosting plans support a programming language but several do not.
With paid web hosting you get :
1. Control panel such as cPanel, Vdeck, Plesk or Ensim which offer features like web stats, the ability to password protect directories, and the ability to create web based email accounts are being offered by a lot of paid web hosting plans.
2. More disk space and data transfer, and can add more files to ones website which can also handle more traffic.
3. Paid sites offer FTP access.
4. Programming languages such as PHP, ASP, CGI/Perl, the majority of paid web hosting plans is supporting Cold fusion and JSP.
5. Your own domain name will result in better search engine ranking.
6.Most paid web hosts offer 24/7 supports.
7. With this you don't have unwanted text or banner ads
Itís not free this is the only major disadvantage of paid web hosting