The average train between Bucks County and 30th Street Station takes 1h 44m and the fastest train takes 1h 26m. There is a train service every few hours from Bucks County to 30th Street Station. 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 hourly between Bucks County and 30th Street Station. The earliest departure is at 5:17 AM in the morning, and the last departure from Bucks County is at 10:47 PM which arrives into 30th Street Station at 4:05 AM. All services require a transfer, and take on average 1h 44m. The schedules shown below are for the next available departures.

1h 37m • 1 change

1h 37m • 1 change

1h 37m • 1 change

1h 37m • 1 change

1h 38m • 1 change

1h 35m • 1 change

1h 26m • 1 change

1h 29m • 1 change

1h 38m • 1 change

1h 35m • 1 change

1h 26m • 1 change

1h 29m • 1 change
Want to know about travelling from Bucks County to 30th Street Station? 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 Bucks County to 30th Street Station. However, there are services departing from Bucks County station and arriving at 30th Street Station station via Suburban Station station. The journey, including transfers, takes approximately 1h 44m.
Bucks County to 30th Street Station train services, operated by SEPTA, depart from Doylestown station.
Bucks County to 30th Street Station train services, operated by SEPTA, arrive at Suburban Station.
The distance between Bucks County and 30th Street Station is 43.5 km. The road distance is 58 km.
SEPTA operates a train from Doylestown to Suburban Station hourly. Tickets cost $3 and the journey takes 1h 24m.