Anywhere I look sites say that the difference is foot movement versus vehicle movement. A reasonable enough explanation, that I didn't question much. But I just read a sentence that makes me realize this explanation may be wrought with the same oversimplification of details that many other language lessons are.
Когда ноги скользят и пытаются разъехаться в разные стороны, ...
Now, legs are not riding a vehicle. So the question arises - why use разъЕХАТЬся вместо слова разойтись?
3 explanations come to mind:
1. Both words being an uncommon prefixed form of the parent roots, their meanings may slide slightly over time. ходить/идти being the more "basic" pair to use for idiomatic or colloquial re-defining, they may have been the pair to slide away from the pure meaning of "to diverge (by foot)", and thus the closest equivalent, "to diverge (by vehicle)", takes up the pure definition of "things moving away from each other".
Or something along those lines.
2. The vehicle/foot distinction is a misinterpretation with too few discrepancies to have been caught, and the REAL distinction is between the ever so familiar Russian *Animate versus inanimate*.
So our new conclusion is that legs are not people, so they ездят. Cars are not people so they ездят (despite an animate SUBJECT of the sentence driving the car: Я езжу). A person moving of their own accord ходит.
The distinction here would have to reside on the level that the *director*(often the sentence's subject) of the motion is irrelevant, it is the object which facilitates the movement that determines which word.
3. Maybe, they're "riding" the ice, for their motion?...