There are
1,071 mi
from Richmond, VA to Marshalltown, IA
That's the driving distance. It would take 20 hours 12 mins to go from Richmond, Virginia to Marshalltown, Iowa.
The flight distance (direct flight from Richmond, VA to Marshalltown, IA) is 876.88 mi.
1,071 mi = 1.61 kms