- San Diego to San Bernardino trains
Next train departures
| Operated by | Vehicle type | Departure time | Departure location | Trip duration | Arrival time | Arrival location | Recommended | Price and booking link |
|---|---|---|---|---|---|---|---|---|
![]() | Train | Santa Fe Depot | San Bernardino Depot | Cheapest | ||||
![]() | Train | Old Town San Diego | San Bernardino Depot | Fastest | ||||
![]() | Train | Santa Fe Depot | San Bernardino Depot | No tags | ||||
![]() | Train | Santa Fe Depot | San Bernardino Depot | No tags | ||||
![]() | Train | Old Town San Diego | San Bernardino Depot | No tags |
Last refresh of the prices: Yesterday at 5:28 PM PST.
Compare 2 ways to go from San Diego to San Bernardino
Among the sustainable travel choices, the train stands out as the good way to reach San Bernardino. The journey takes about 4 hours 46 minutes and with fares starting at just $48, it presents an excellent value for a comfortable ride.
Train Companies
Based on 5636 reviews, the company was rated 4.1 stars on Busbud. Travelers were especially satisfied with the seats and the ticket access but often complained with the wifi. Amtrak ticket prices on this trip start at $48
Frequently asked questions about traveling from San Diego, CA, US to San Bernardino, US by train
Please note that schedules, routes, or operator details shown here may be updated or vary at the time of your trip.
How much is the train ticket from San Diego to San Bernardino?
The cheapest train tickets from San Diego to San Bernardino start from $48. The average price for this train route is around $51. Busbud recommends that you book your tickets in advance for a better chance to get the lowest possible price.
How long is the train journey from San Diego to San Bernardino?
The average train ride duration from San Diego to San Bernardino is 4h 46m, covering a distance of 97 miles (155 km). The quickest train can get you there in 4h 46m and is operated by Amtrak.
Which train operators service the San Diego to San Bernardino route?
Several major train operators operate on this route with 2 trains available per day.
What is the earliest and latest departure time for the train from San Diego to San Bernardino?
The earliest train departs from San Diego to San Bernardino at 2:01pm. And the latest train departs at 2:10pm.
Find cheapest prices for trains
Price is for a one-way ticket for one passenger and based on past searches.
To save money and be sure you have the best seat, it's a good idea to buy your train tickets from San Diego, CA, US to San Bernardino, US, as early as possible.
You can expect to pay from $45 to $262 for a train ticket from San Diego, CA, US to San Bernardino, US based on the last 2 days. You can expect to find the cheapest price for the trip at $48 which is on 2025-12-12.
What's the cheapest way to go from San Diego, CA, US to San Bernardino, US?
The best way to travel between San Diego, CA, US and San Bernardino, US is by train. By choosing the train, you'll get to save some money as you travel to your destination, as ticket prices cost $51 on average. If you're on a budget, you'll find cheap tickets from $48. If you're looking for the fastest way to get to San Bernardino, US, choose the train, as it will take you from San Diego, CA, US to San Bernardino, US in about 4h 46m - that's the fastest way to get there!
Top Traveled Train Routes
People from around the world trust Busbud
Popular train departures from San Diego
- Find train tickets from San Diego to Irvine
- San Diego to Los Angeles train times and fares
- How to travel from San Diego to San Jose
- Find train tickets from San Diego to Sacramento
- San Diego to Anaheim train times and fares
- How to travel from San Diego to Portland
- Find train tickets from San Diego to Seattle






