There are
829 mi
from Elgin, IL to Petersburg, VA
That's the driving distance. It would take 16 hours 9 mins to go from Elgin, Illinois to Petersburg, Virginia.
The flight distance (direct flight from Elgin, IL to Petersburg, VA) is 666.74 mi.
829 mi = 1,333.92 kms