There are
323 mi
from Middletown, OH to Elgin, IL
That's the driving distance. It would take 6 hours 37 mins to go from Middletown, Ohio to Elgin, Illinois.
The flight distance (direct flight from Middletown, OH to Elgin, IL) is 267.61 mi.
323 mi = 519.95 kms