The average train between San Diego and Duarte takes 3h 54m and the fastest train takes 3h 46m. The train service runs several times per day from San Diego to Duarte. 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 every 3 hours between San Diego and Duarte. The earliest departure is at 4:01 AM at night, and the last departure from San Diego is at 9:01 PM which arrives into Duarte at 12:56 AM. All services require a transfer at Los Angeles and take an average of 3h 54m. The schedules shown below are for the next available departures.

3h 50m • 1 change

3h 50m • 1 change

3h 50m • 1 change

3h 50m • 1 change

3h 46m • 1 change

3h 51m • 1 change

3h 50m • 1 change

3h 50m • 1 change

3h 46m • 1 change

3h 51m • 1 change

3h 50m • 1 change

3h 50m • 1 change
Want to know about travelling from San Diego to Duarte? 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 Duarte. However, there are services departing from San Diego station and arriving at Duarte station via Los Angeles. The journey, including transfers, takes approximately 3h 54m.
San Diego to Duarte train services, operated by Amtrak, depart from San Diego station.
San Diego to Duarte train services, operated by Amtrak, arrive at Los Angeles station.
The distance between San Diego and Duarte is 175.5 km. The road distance is 237 km.
Amtrak operates a train from San Diego to Los Angeles hourly. Tickets cost $40–85 and the journey takes 2h 56m.