Getting There and Away

Beautiful view of a historic canal in Haarlem under dramatic clouds.
Hans Heemsbergen, Pexels

Haarlem is well-connected through its two railway stations: Haarlem Central Station, conveniently located near the city center, and Haarlem Spaarnwoude. The city also operates an extensive local bus network, with no tram or metro services available. Amsterdam Schiphol Airport (AMS) serves as the primary international gateway for visitors to Haarlem.

From Amsterdam Centraal Station:

Direct trains depart frequently, typically every 15-20 minutes, with journey times of approximately 15-20 minutes to Haarlem Central Station. A single ticket usually costs between €5.20 and €7.

From Amsterdam Schiphol Airport (AMS):

Traveling by train usually involves one transfer, often at Amsterdam Sloterdijk, taking about 28-34 minutes with an indicative cost of €8-€13. Alternatively, direct bus line 300 connects the airport to Haarlem Centrum/Verwulft in approximately 36-41 minutes, costing around €8-€12. Night buses are also available on this route.

From London:

The journey typically involves taking a Eurostar train to Amsterdam Centraal (or Rotterdam), followed by a local train to Haarlem. This route can take between 4 hours 20 minutes and 5 hours 51 minutes, with tickets ranging from €75 to €340, depending on booking and flexibility. Flying into Amsterdam Schiphol (AMS) from London takes about 1 hour 15 minutes, with flight tickets starting from £35-£49 (one-way), after which you can continue to Haarlem by train or bus.

From Germany (e.g., Berlin, Frankfurt):

Train journeys from Berlin to Haarlem average around 6 hours 13 minutes with at least one change, costing from $42 (€38). From Frankfurt am Main, trains take about 4 hours 51 minutes, with tickets from $31 (€25). Alternatively, flying to Amsterdam Schiphol (AMS) takes approximately 1 hour 25 minutes from Berlin, with flight tickets around $54 (€49), followed by a train or bus transfer to Haarlem.

Within the Netherlands:

Direct train services connect Haarlem to other Dutch cities such as Leiden, Rotterdam, and Utrecht. During summer, direct trains also run to the beach town of Zandvoort aan Zee, with a travel time of around 10 minutes.

Payment for Public Transport:

For local and national public transport, you can use a rechargeable OV-chip card, tap-in/out with a debit or credit card (OVpay), or purchase single-use tickets. The Amsterdam & Region Travel Ticket is also a convenient option for travel within Amsterdam and to Haarlem.