There are
904 mi
from Asheville, NC to Marshalltown, IA
That's the driving distance. It would take 17 hours 5 mins to go from Asheville, North Carolina to Marshalltown, Iowa.
The flight distance (direct flight from Asheville, NC to Marshalltown, IA) is 712.63 mi.
904 mi = 1,455.26 kms