Trains from St. Louis, MO to Tampa, FL cover the 860 miles (1387 km) long trip with our travel partners like Amtrak. There are direct train services available.