There are
287 mi
from Lafayette, IN to St Charles, MO
That's the driving distance. It would take 5 hours 31 mins to go from Lafayette, Indiana to St Charles, Missouri.
The flight distance (direct flight from Lafayette, IN to St Charles, MO) is 223.87 mi.
287 mi = 462.19 kms