There are
785 mi
from Virginia Beach, VA to Lafayette, IN
That's the driving distance. It would take 15 hours 6 mins to go from Virginia Beach, Virginia to Lafayette, Indiana.
The flight distance (direct flight from Virginia Beach, VA to Lafayette, IN) is 637.04 mi.
785 mi = 1,263.56 kms