The average train between Mainz and Ulm takes 3h 3m and the fastest train takes 2h 39m. There is a train service every few hours from Mainz 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 Mainz and Ulm. The earliest departure is at 12:02 AM at night, and the last departure from Mainz is at 10:16 PM which arrives into Ulm at 4:38 AM. All services require a transfer, and take on average 3h 3m. The schedules shown below are for the next available departures.

2h 51m • 1 change

2h 59m • 1 change

2h 51m • 1 change

2h 59m • 1 change

3h 58m • 1 change

3h 8m • 1 change

2h 59m • 1 change

2h 51m • 1 change

4h 22m • 1 change

3h 59m • 1 change

2h 52m • 1 change

2h 59m • 1 change

2h 52m • 1 change

2h 59m • 1 change

2h 39m • 1 change

2h 59m • 1 change
Want to know about travelling from Mainz 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 Mainz to Ulm. However, there are services departing from Mainz station and arriving at Ulm station via Ulm Hauptbahnhof. The journey, including transfers, takes approximately 3h 3m.
Mainz to Ulm train services, operated by Deutsche Bahn Regio (DB Regional), depart from Frankfurt station.
Mainz to Ulm train services, operated by Deutsche Bahn Regio (DB Regional), arrive at Ulm Hauptbahnhof station.
Book your Mainz to Ulm train tickets online with Deutsche Bahn Regio (DB Regional), Deutsche Bahn Intercity (DB IC) and 2 other operators.
The distance between Mainz and Ulm is 215.8 km. The road distance is 293 km.
Deutsche Bahn Intercity (DB IC) operates a train from Frankfurt to Ulm Hauptbahnhof hourly. Tickets cost €45–140 and the journey takes 2h 4m. Nederlandse Spoorwegen (NS) also services this route twice daily.