There are
304 mi
from Asheville, NC to Portsmouth, OH
That's the driving distance. It would take 6 hours 5 mins to go from Asheville, North Carolina to Portsmouth, Ohio.
The flight distance (direct flight from Asheville, NC to Portsmouth, OH) is 217.69 mi.
304 mi = 489.75 kms