There are
333 mi
from Waukegan, IL to Hannibal, MO
That's the driving distance. It would take 6 hours 16 mins to go from Waukegan, Illinois to Hannibal, Missouri.
The flight distance (direct flight from Waukegan, IL to Hannibal, MO) is 259.16 mi.
333 mi = 536.15 kms