First of all, do I need to buy hosting? => Yes, you will need a web hosting to build a website, also with WordPress. With only a domain name, you can't have a website without a webserver.
(If I do, I'll buy it from godaddy, so please don't tell me to buy it from some other website) => You can actually have your domain in GoDaddy, and host the domain somewhere else, in another webhost, which I also recommend. If you use GoDaddy webserver, you site will be a slow website, I agree with "King" above. GoDaddy is ok for domain registration but not recommended for webhosting.
I want to install wordpress on my website, but it's asking me to pay a dollar/month for hosting. It also gives me a free domain name, but I already have one. Did I waste my money buying a domain name? => If you are already have one, then when you sign up for a hosting plan (in GoDaddy or somewhere else) DO NOT buy a domain again, instead choose "I already have a domain" option, and type your domain there.
Video tut using a domain name with different host (started at 11 minutes 53 seconds). In the video I am using Namecheap (Domain) and HostGator (webhost), the process will be similar if you use another hosts.
http://youtu.be/ma-nHxHQ1jc?t=11m53s
Hope this will help.