Firstly yes you can host your own server from home and for free! But this is a VERY Complicated method, not always the most reliable, and success can drastically vary depending on your computer, internet connection, router your using and general basic understanding of networking. To host a server you do NOT need to buy any extra or new equipment in most cases.
It can be done as yes, i used to host one on COD 1 And COD 4
If you are looking at how to do this please read this post and follow suggestions on therehttp://www.geekstogo...ome-t25785.html
If you require detailed assistants post back here or pm me and i'll give you as much help as possible!
Secondly, Paying for professional hosting is also an option if you have the funds. To work out how much it will cost you it is usually around $2 a slot, So if you wanted a 30 Person server, thats 30 x $2 = $60 a month.
Doing a bit of research in to this can help you find the best deals around. Google is your best freind for this.
Hope this helps