As Professor Stahlke points out, prepositions in English (and in a lot of Indo-
European languages) are particularly weird and idiosyncratic.
For cars and buses, this might be a fun exercise for the kids; get them to list a
bunch of different vehicles, and then think about which ones you use 'in' and
'on' with, and maybe try to figure out the rules. Hmm, maybe I've just revealed
that I have an odd notion of 'fun'...
But doing this exercise by myself in the privacy of my office, I think maybe the
rules might be:
If the vehicle is one that you literally sit on top of, you have to use 'on'
(motorcycle, bicycle, horse...)
If the vehicle literally or metaphoricallly 'contains' you, and there isn't enough
space for people to walk around inside, you use 'in' for people who are riding
inside it (car, truck, tank?, canoe, kayak...)
If the vehicle contains you and there is enough space inside for people to stand
up and walk around, you typically use 'on' (bus, plane, ocean liner...)
Your mileage may vary, of course, but that's how it seems to work for me. The
size differences are clearest for me with boats; I definitely get in a canoe (and
not on), but I can get on a boat as long as it's big enough for me to stroll around
on the decks. Of course, you can use 'on' with the smaller vehicles as long as
you're planning to get on top of them; 'get on the car' means 'climb up onto the
I hope this is useful--