In my understanding, each physical
subdomain represents a new site
(rather than a new application or
virtual directory) in IIS.
Ah - BOTH are new sites in IIS. NONE needs to be a new application.
From IIS view nothing is different, just that one is also accessible as a folder within the parent site (what you call virtual - the term really is totally inappropriate technically).
You always need some HTTP binding, preferaly with a site registration. You dont need an application at all (you can map a pretty unlimited number of sites to one common application pool).
Sites are not exactly expensive, although "Unlimitd" is rather theoretical.
There i an old approach to subdomains that used one site and a rewriter to rewrite requests to a specific domain to go to a folder. In this case all IIS needed was an additional host header ON THE ORIGINAL SITE, otherwise the request wuold never get to the site. This is slightly less resoruce intensive than a separate site. OTOH the moment you make the folder an application, espeically when assigning an application pool, you pretty much blow all savings out of the water (hint: the application pool is a LOT more expensive than a separate site). web.config inheritance can be problemantic there - this model is pretty bad if you get more complicated. Ever since IIS 7 thre is no need for it.
OTherwise basically it all runs down to disc and memory space and CPU capacity. What exactly IS yoru question? How the finance works? Because that is what it all boild down to - if someone really wants "unlimitdd" nad starts putting up a million sites you will need some powerfull servers to handle them, whatever way you implement them.