There are 7 ways to get from Haarlem to Saint-Malo by train (Eurostar, TGV), bus, car, plane, or train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train via Rennes
best- Take the train from Haarlem to Rotterdam Centraaltrain
- Take the train from Rotterdam Centraal to Paris Nordtrain
- Take the train from Paris Montparnasse 1 Et 2 to Rennestrain Tgv
- Take the train from Rennes to St Malotrain Ter
7h 20m€234–412Bus via Roissy-en-France
cheapest- Take the bus from Amsterdam - Schiphol Airport Bus Station to Paris - CDG Roissypole Bus Stationbus BlaBlaCar Bus
- Take the bus from Paris - CDG Roissypole Bus Station to Saint-Malobus BlaBlaCar Bus
16h 59m€67–115Bus
- Take the bus from Amsterdam Schiphol Airport to Parisbus N802
- Take the bus from Paris to Saint-Malobus 772 / ...
15h 3m€75–130Drive 796.5 km
- Drive from Haarlem to Saint-Malocar 796.5 km
9h 1m€146–211Fly to Rennes-Saint-Jacques Airport, train
- Fly from Amsterdam Airport Schiphol (AMS) to Rennes-Saint-Jacques Airport (RNS)plane AMS - RNS
- Take the train from Rennes to St Malotrain
5h 42m€151–414Train
- Take the train from Haarlem to Rotterdam Centraaltrain
- Take the train from Rotterdam Centraal to Paris Nordtrain
- Take the train from Paris Montparnasse 1 Et 2 to St Malotrain Tgv
9h€232–405Fly to Nantes Atlantique Airport, train
- Fly from Amsterdam Airport Schiphol (AMS) to Nantes Atlantique Airport (NTE)plane AMS - NTE
- Take the train from Nantes to Rennestrain
- Take the train from Rennes to St Malotrain
7h 44m€129–367
Haarlem to Saint-Malo by train, subway, and foot
Comparing Your Travel Options
The cheapest way to get from Haarlem to Saint-Malo is to bus via Roissy-en-France which costs €65 - €120 and takes 16h 59m.
The fastest way to get from Haarlem to Saint-Malo is to fly and train which takes 5h 42m and costs €150 - €420.
No, there is no direct bus from Haarlem to Saint-Malo. However, there are services departing from Haarlem, Centrum/Verwulft and arriving at Saint-Malo via Amsterdam Schiphol Airport and Paris. The journey, including transfers, takes approximately 15h 3m.
No, there is no direct train from Haarlem to Saint-Malo. However, there are services departing from Haarlem and arriving at St Malo via Rotterdam Centraal, Gare du Nord, Paris Montparnasse 1 Et 2 and Rennes. The journey, including transfers, takes approximately 7h 20m.
The distance between Haarlem and Saint-Malo is 955 km. The road distance is 796.5 km.
The best way to get from Haarlem to Saint-Malo without a car is to train via Rennes which takes 7h 20m and costs €230 - €420.
It takes approximately 7h 20m to get from Haarlem to Saint-Malo, including transfers.
Haarlem to Saint-Malo bus services, operated by FlixBus, depart from Amsterdam Schiphol Airport station.
Haarlem to Saint-Malo train services, operated by Nederlandse Spoorwegen (NS), depart from Haarlem station.
The best way to get from Haarlem to Saint-Malo is to train via Rennes which takes 7h 20m and costs €230 - €420. Alternatively, you can bus, which costs €75 - €130 and takes 15h 3m.
What companies run services between Haarlem, Netherlands and Saint-Malo, France?
You can take a train from Haarlem to St Malo via Rotterdam Centraal, Paris Nord, Gare du Nord, Montparnasse Bienvenue, Paris Montparnasse 1 Et 2, and Rennes in around 7h 20m. Alternatively, you can take a bus from Haarlem, Centrum/Verwulft to Saint-Malo via Schiphol, Airport, Amsterdam Schiphol Airport, and Paris in around 15h 3m.
- Website
- klm.com
Flights from Amsterdam Airport Schiphol to Rennes-Saint-Jacques Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €95–600
Flights from Amsterdam Airport Schiphol to Rennes-Saint-Jacques Airport via Paris Charles de Gaulle
- Ave. Duration
- 3h 22m
- When
- Saturday to Friday
- Estimated price
- €100–650
Flights from Amsterdam Airport Schiphol to Nantes Atlantique Airport
- Ave. Duration
- 1h 31m
- When
- Every day
- Estimated price
- €65–400
Flights from Amsterdam Airport Schiphol to Nantes Atlantique Airport via Paris Charles de Gaulle
- Ave. Duration
- 3h 50m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €65–400
- Phone
- +31 30 751 5155
- Website
- Nederlandse Spoorwegen (NS)
Train from Haarlem to Rotterdam Centraal
- Ave. Duration
- 55 min
- Frequency
- Every 30 minutes
- Estimated price
- €7–15
- Website
- Nederlandse Spoorwegen (NS)
Train from Haarlem to Rotterdam Centraal
- Ave. Duration
- 55 min
- Frequency
- Every 30 minutes
- Estimated price
- €7–15
- Website
- Nederlandse Spoorwegen (NS)
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Amsterdam Schiphol Airport to Paris
- Ave. Duration
- 6h 50m
- Frequency
- Once daily
- Estimated price
- €40–65
- Website
- Flixbus
Bus from Paris to Saint-Malo
- Ave. Duration
- 5h 30m
- Frequency
- Once daily
- Estimated price
- €30–55
- Website
- Flixbus
Want to know more about travelling around France
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Train travel in France: A guide to SNCF
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Booking & Getting There
Haarlem to Saint-Malo bus services, operated by FlixBus, arrive at Paris station.
Haarlem to Saint-Malo train services, operated by Nederlandse Spoorwegen (NS), arrive at Rotterdam Centraal station.
Yes, the driving distance between Haarlem to Saint-Malo is 796 km. It takes approximately 9h 1m to drive from Haarlem to Saint-Malo.
Book your Haarlem to Saint-Malo train tickets online with Omio.
There are 2922+ hotels available in Saint-Malo.









