yes you can buy domain and hosting from two different providers and link them to see the website online.
When you purchase the hosting account or domain name they will provide you with control panel to manage your domain or hosting account. The hosting account provider will send you the nameserver details while you are purchasing the account.
Just use that nameservers and update it in your domain control panel, the panel which is given to you from the domain provider in this case(Godaddy). The namerserves will take some time to propagate in all isp. Hence it will take some time. After that you can see your website online.
The benefit of having domain name and host in the same place is that it is sometimes cheaper to purchase the domain with the host