There are
418 mi
from Dayton, OH to Hannibal, MO
That's the driving distance. It would take 7 hours 56 mins to go from Dayton, Ohio to Hannibal, Missouri.
The flight distance (direct flight from Dayton, OH to Hannibal, MO) is 380.72 mi.
418 mi = 673.43 kms