There are
350 mi
from Asheville, NC to Petersburg, VA
That's the driving distance. It would take 6 hours 37 mins to go from Asheville, North Carolina to Petersburg, Virginia.
The flight distance (direct flight from Asheville, NC to Petersburg, VA) is 307.68 mi.
350 mi = 562.67 kms