There are
312 mi
from Rochester, MN to Elgin, IL
That's the driving distance. It would take 5 hours 41 mins to go from Rochester, Minnesota to Elgin, Illinois.
The flight distance (direct flight from Rochester, MN to Elgin, IL) is 252.05 mi.
312 mi = 502.52 kms