There are
972 mi
from St Joseph, MO to Shelby, NC
That's the driving distance. It would take 18 hours 18 mins to go from St Joseph, Missouri to Shelby, North Carolina.
The flight distance (direct flight from St Joseph, MO to Shelby, NC) is 790.43 mi.
972 mi = 1,564.60 kms