There are
210 mi
from Kansas City, MO to Hannibal, MO
That's the driving distance. It would take 4 hours 3 mins to go from Kansas City, Missouri to Hannibal, Missouri.
The flight distance (direct flight from Kansas City, MO to Hannibal, MO) is 176.97 mi.
210 mi = 337.66 kms