Looking at the above map, The Unsullied took the red route which seems much longer than the green route. I read that it was too long (?) to go by land. But at the same time, JamieJaime attacked Highgarden by land (with foot soldiers) in a route that is almost as long.
As for Casterly Rock's breach, it only needed one ship (as we see in the episode) to open their gates.