There are
319 mi
from Elgin, IL to St Charles, MO
That's the driving distance. It would take 6 hours 4 mins to go from Elgin, Illinois to St Charles, Missouri.
The flight distance (direct flight from Elgin, IL to St Charles, MO) is 253.26 mi.
319 mi = 512.69 kms