when sites become this large with this much traffic, hosting companies tend to not offer you shared-server services (the cheap plans), as they begin to affect other sites on that server (and that is a pain in the arse for innocent site owners like me when someone not associated to your site has a cronjob or script that is running amok and takes down the entire server), and you have no choice but to move to dedicated hosting. tom ended up purchasing the hardware, if i'm not mistaken (a few grand min), on top of leasing a fairly high-bandwidth co-lo for the server.
i spend approximately $400/year on hosting for 3 websites that i run, one of which has vBulletin (approx $60/yr in support renewal fees on top of the initial $160 or so). these are all non-professional/small sites that are novelty or personal use. when i took over my community-shared site, not a single penny was put into it (ezBoard forum; site hosted on someone's cable modem personal connection), but i've ended up spending no less than $1,000 or so of my own personal money on hosting, licenses, support renewal fees, domain registration renewal fees, etc. and let's not even count the number of hours i've spent on rebuilding my entire site and then again and again, along with a few issues here and there and general administration (based on what i make now, it'd be in the neighborhood of tens of thousands of dollars in time spent working). aside from being able to attend any concert event or dance club on VIP/Guest List in my general area that i want to (along with a guest, in most cases), i've not made a single penny on my investment (ugh, talk about passion.. heh).
...and it never hurts to make a little extra on the side - never know when you may have to purchase something like a server to keep things running.