The average train between San Diego and San Bernardino takes 3h 53m and the fastest train takes 3h 51m. The train runs, on average, 4 times per week from San Diego to San Bernardino. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run 4 times a week between San Diego and San Bernardino. The earliest departure is at 1:01 PM in the afternoon, and the last departure from San Diego is at 5:01 PM which arrives into San Bernardino at 8:52 PM. All services require a transfer, and take on average 3h 53m. The schedules shown below are for the next available departures.
Want to know about travelling from San Diego to San Bernardino? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from San Diego to San Bernardino. However, there are services departing from San Diego station and arriving at San Bernardino station via Oceanside. The journey, including transfers, takes approximately 3h 53m.
San Diego to San Bernardino train services, operated by Amtrak, depart from San Diego station.
San Diego to San Bernardino train services, operated by Amtrak, arrive at San Bernardino Depot station.
Book your San Diego to San Bernardino train tickets online with Amtrak and Metrolink Trains.
The distance between San Diego and San Bernardino is 155.4 km. The road distance is 227 km.
You can take a train from San Diego to San Bernardino Depot via Oceanside in around 4h 16m.