The average train between Speyer and Ulm takes 2h 19m and the fastest train takes 1h 56m. There is a train service every few hours from Speyer to Ulm. 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 Speyer and Ulm. The earliest departure is at 5:27 AM in the morning, and the last departure from Speyer is at 11:35 PM which arrives into Ulm at 4:49 AM. All services require a transfer, and take on average 2h 19m. The schedules shown below are for the next available departures.

2h 11m • 1 change

1h 56m • 1 change

2h 11m • 1 change

1h 58m • 1 change

2h 33m • 1 change

2h 13m • 1 change

1h 58m • 1 change

2h 11m • 1 change

2h 33m • 1 change

2h 13m • 1 change

1h 58m • 1 change

2h 11m • 1 change
Want to know about travelling from Speyer to Ulm? 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 Speyer to Ulm. However, there are services departing from Speyer station and arriving at Ulm station via Mannheim, Hauptbahnhof. The journey, including transfers, takes approximately 2h 19m.
Speyer to Ulm train services, operated by Deutsche Bahn Regio (DB Regional), depart from Speyer, Hbf/ZOB station.
Speyer to Ulm train services, operated by Deutsche Bahn Regio (DB Regional), arrive at Ulm Hauptbahnhof station.
Book your Speyer to Ulm train tickets online with Deutsche Bahn Regio (DB Regional) and Deutsche Bahn Intercity (DB IC).
The distance between Speyer and Ulm is 153.5 km. The road distance is 218 km.
You can take a train from Speyer, Hbf/ZOB to Ulm Hauptbahnhof via Mannheim, Hauptbahnhof in around 2h 11m.