There are
978 mi
from Waterloo, IA to Lancaster, PA
That's the driving distance. It would take 18 hours 6 mins to go from Waterloo, Iowa to Lancaster, Pennsylvania.
The flight distance (direct flight from Waterloo, IA to Lancaster, PA) is 848.63 mi.
978 mi = 1,574.27 kms