There are
507 mi
from Columbia, MO to Ham Lake, MN
That's the driving distance. It would take 9 hours 40 mins to go from Columbia, Missouri to Ham Lake, Minnesota.
The flight distance (direct flight from Columbia, MO to Ham Lake, MN) is 437.70 mi.
507 mi = 815.20 kms