Train from San Bernardino, US to San Diego, CA, US: Tickets & Timetables

Next train departures

Next departures from San Bernardino to San Diego on 12 December
Operated byVehicle typeDeparture timeDeparture locationTrip durationArrival timeArrival locationRecommendedPrice and booking link
AmtrakTrain
San Bernardino Depot
Old Town San DiegoCheapestFastest
AmtrakTrain
San Bernardino Depot
Old Town San DiegoNo tags
AmtrakTrain
San Bernardino Depot
Old Town San DiegoNo tags
AmtrakTrain
San Bernardino Depot
Old Town San DiegoNo tags
AmtrakTrain
San Bernardino Depot
Old Town San DiegoNo tags

Last refresh of the prices: Today at 1:24 PM PST.

Compare 2 ways to travel from San Bernardino to San Diego

We recommend taking the bus

Among the sustainable travel choices, the bus stands out as a good way to reach San Diego. The journey takes about 3 hours 45 minutes and with fares starting at just R 366, it presents an excellent value for a comfortable ride.

15bus per day
3h 45mAverage duration
137 kmDistance
3kgCO₂ emissions
Average priceR 366 - R 1 377Average duration3h 45m
3kg CO₂e
Average priceR 827 - R 1 006Average duration7h 2m
14kg CO₂e

Frequently asked questions about travelling from San Bernardino, US to San Diego, CA, US by train

Please note that timetables, routes, or operator details shown here may be updated or differ at the time of your trip.

  1. How much is the train ticket from San Bernardino to San Diego?

    The cheapest train tickets from San Bernardino to San Diego start from R 827. The average price for this train route is around R 881. Busbud recommends booking your tickets in advance for a better chance to secure the lowest possible price.

  2. How long is the train journey from San Bernardino to San Diego?

    The average train journey time from San Bernardino to San Diego is 7h 2m, covering a distance of 155 km. The quickest train can get you there in 5h 2m and is operated by Amtrak.

  3. Which train operators serve the San Bernardino to San Diego route?

    Several major train operators run on this route, with 2 trains available per day.

  4. What are the earliest and latest departure times for the train from San Bernardino to San Diego?

    The earliest train from San Bernardino to San Diego departs at 05:51. And the latest train departs at 06:51.

Find cheapest prices for trains

Price is for a one-way ticket for one passenger and based on past searches.

Best price found
09/12
R 831
10/12
R 831
Today
R 831
12/12
R 831
13/12
R 779
14/12
R 779
15/12
R 831
16/12
R 779
busbud logoThe cheapest trip from San Bernardino, US to San Diego, CA, US was searched and found on 13 Dec 2025 with a price of R 779

To save money and be sure you have the best seat, it's a good idea to buy your train tickets from San Bernardino, US to San Diego, CA, US as early as possible.

You can expect to pay from R 779 to R 4 722 for a train ticket from San Bernardino, US to San Diego, CA, US based on the last 2 days. You can expect to find the cheapest price for the trip at R 779, which is on 2025-12-13.

What's the cheapest way to go from San Bernardino, US to San Diego, CA, US?

busbud logoThe train is the cheapest travel choice for this destination

The best way to travel between San Bernardino, US and San Diego, CA, 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 R 881 on average. If you're on a budget, you'll find cheap tickets from R 827. If you're looking for the fastest way to get to San Diego, CA, US, choose the train, as it will take you from San Bernardino, US to San Diego, CA, US in about 3h 45m – that's the fastest way to get there!

People from around the world trust Busbud