There are
502 mi
from St Joseph, MO to Gainesville, TX
That's the driving distance. It would take 8 hours 53 mins to go from St Joseph, Missouri to Gainesville, Texas.
The flight distance (direct flight from St Joseph, MO to Gainesville, TX) is 442.33 mi.
502 mi = 808.56 kms