There are
787 mi
from Virginia Beach, VA to Lafayette, IN
That's the driving distance. It would take 15 hours 2 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.
787 mi = 1,266.29 kms