"How many Finns know how to dance?"
Translation:Kuinka moni suomalainen osaa tanssia?
I think the diffrence is in the active/ passive form of the verb.
The core statement of the original sentence is "suomalainen osaa", where the noun "suomalainen" is 3rd singular form of the noun and "osaa" is 3rd singular form of the verb.
In the case of "montako suomalaista on bussissa" the verb is in passive form without any given agent; literally translated "how many Finns are there in the bus?". In active form this would be: "kuinka moni suomalainen on bussissa" (= "moniko suomalainen on bussissa?")
The mess comes up from the similar forms of the verb "osata" and "olla", as both the 3rd singular and the passive form are "osaa" and "on". (The same difficulty with all the verbs, I guess)
I suppose the difference is that "Kuinka monta monta suomalaista" is more about asking and being able to count the exact number of the Finns themselves.
For example: "Kuinka monta suomalaista istuu saunassa?" - "How many Finns are sitting in the sauna?"
"Kuinka moni suomalainen" is rather asking for round numbers of the whole, or percents in not so specified area. It kind of has a hidden (of all Finns)-part with it.
This is what I thought too.
Note that "Can/to be able to" in the sense of literally physically being healthy enough, for example, is pystyä in Finnish. Osata is only for having the skill to do something, while tietää is for mental knowledge, not about having the muscle memory or motor skills for something.