Getting to Amsterdam by Train from the North Holland Coast

A practical guide to train travel from Noord-Holland's coastal towns to Amsterdam, with timings, tickets and tips for booking a hotel.

Coastal Departures: Stations Along the North Holland Line

The North Holland coast is served by a cluster of railway stations on the line between Alkmaar and Amsterdam. From north to south, the main stops are Heiloo, Castricum, Uitgeest, Krommenie-Assendelft, Wormerveer, Zaandijk Zaanse Schans, Koog aan de Zaan, Zaandam, Amsterdam Sloterdijk and Amsterdam Centraal. Not all trains stop everywhere, but the Intercity and Sprinter services together provide frequent connections. If you are staying in Egmond aan Zee or Bergen aan Zee, you will first need a bus to Alkmaar or Heiloo. From there, trains to Amsterdam run every 15 to 30 minutes, with the journey to Amsterdam Centraal taking around 35 to 40 minutes on the Intercity.

For those based further south, Castricum and Uitgeest are convenient. Castricum has direct trains to Amsterdam Centraal, taking about 25 minutes. Uitgeest is on the same line and offers a similar travel time. Zaandam is the closest coastal-ish station to Amsterdam, with trains taking just 12 minutes to Centraal. If you are staying in Zandvoort, note that it is not on this line; you would need to travel to Haarlem first. However, Zandvoort is technically in Noord-Holland and has direct trains to Amsterdam via Haarlem, with a total journey of around 30 minutes. The coastal towns of Wijk aan Zee and IJmuiden do not have their own stations; you would need to bus to Beverwijk or Haarlem.

Tickets and Fares: OV-chipkaart, E-tickets and Day Passes

For train travel in the Netherlands, you can use an OV-chipkaart (the public transport smart card) or buy a paper e-ticket. A single journey from Castricum to Amsterdam Centraal costs around €5.50 to €6.00 in second class with an OV-chipkaart; prices vary slightly by retailer. If you are making multiple trips, consider a NS Dagkaart (day pass), which offers unlimited travel for a day. Prices for a day pass depend on the zone, but for the North Holland coast to Amsterdam, expect to pay around €15 to €20. Children aged 4 to 11 can use a Kids Vrij (free) ticket when accompanied by an adult with a valid ticket. Always tap in and out with your OV-chipkaart to avoid penalties.

You can buy tickets at ticket machines at stations (which accept coins and cards) or online via the NS website or app. Note that ticket machines at smaller stations like Heiloo or Uitgeest may only accept card payments. If you are travelling from a coastal town without a station, you will need to buy a bus ticket to the station first; a bus single ticket costs around €2 to €3.50 depending on distance. For groups, the NS Groepsticket offers discounts for 2 to 7 people travelling together, but it is only valid off-peak. If you plan to explore more of Noord-Holland, the Amsterdam & Region Travel Ticket covers trains, buses and trams in the region, including the coast, and costs around €20 for a day.

Timing Your Journey: Peak Hours, Frequency and Connections

Trains from the North Holland coast to Amsterdam run frequently, but frequency varies by station. From Alkmaar, there are four Intercity trains per hour to Amsterdam Centraal during the day, dropping to two per hour in the evening. From Castricum, there are typically four trains per hour (two Intercity, two Sprinter) during peak times, and two per hour off-peak. The first trains leave around 5:30 AM on weekdays, and the last trains return from Amsterdam around 12:30 AM. If you are travelling with luggage, avoid the peak hours (7:00-9:00 AM and 5:00-6:30 PM) when trains can be crowded, especially on weekdays. Weekends are generally quieter, but still busy on sunny days.

If your coastal hotel is in Bergen aan Zee or Egmond aan Zee, you will need to take a bus to Alkmaar or Heiloo first. Bus line 166 runs from Bergen aan Zee to Alkmaar station in about 25 minutes. From Egmond aan Zee, bus 165 goes to Alkmaar in 20 minutes. Buses run every 30 to 60 minutes, so check the schedule to avoid long waits. Once at Alkmaar, the train to Amsterdam takes 35 minutes. Total journey time from Bergen aan Zee to Amsterdam Centraal is around 1 hour and 15 minutes. For a day trip, I recommend leaving before 9:00 AM to avoid the worst of the crowds and returning after 7:00 PM for a more relaxed journey.

Where to Stay: Coastal Towns with Easy Train Access

If you want easy train access to Amsterdam, consider staying in Castricum or Alkmaar. Castricum has a direct train to Amsterdam Centraal in 25 minutes, and the town itself is a pleasant base with a beach (Castricum aan Zee) about 5 km away, reachable by bus or bike. Alkmaar is larger, with more hotel options, and has direct trains to Amsterdam in 35 minutes. The historic centre of Alkmaar is worth exploring, and the famous cheese market runs on Fridays from April to September. For a quieter coastal experience, Bergen aan Zee is lovely but requires a bus connection to Alkmaar. I would book a hotel in Castricum for the best balance of beach and city access.

Booking a hotel in Castricum or Alkmaar also gives you flexibility for day trips to other parts of Noord-Holland, such as the Zaanse Schans (trains from Castricum to Zaandijk Zaanse Schans take about 20 minutes) or Haarlem (30 minutes by train). If you prefer to stay right on the beach, Egmond aan Zee has several hotels and a broad sandy beach, but the bus to Alkmaar adds 20 minutes to your journey. For a seamless trip, I recommend choosing a hotel within walking distance of Castricum or Alkmaar station. Websites like this one list hotels with real guest reviews, so you can pick one that suits your budget and needs.

Questions, answered

How long does the train take from Castricum to Amsterdam Centraal?

The direct train from Castricum to Amsterdam Centraal takes about 25 minutes. Trains run four times per hour during peak times and twice per hour off-peak. It's a comfortable journey with no changes required.

Can I use my OV-chipkaart on trains from the North Holland coast?

Yes, you can use an OV-chipkaart on all trains in the Netherlands, including those from the North Holland coast. Just tap in at the start of your journey and tap out at the end. Ensure you have enough balance on the card.

Is there a direct train from Bergen aan Zee to Amsterdam?

No, Bergen aan Zee does not have a train station. You would need to take bus 166 to Alkmaar station (about 25 minutes) and then a train to Amsterdam Centraal (35 minutes). Total journey time is around 1 hour and 15 minutes.

What is the best time to travel by train from the coast to Amsterdam to avoid crowds?

Avoid peak hours (7:00-9:00 AM and 5:00-6:30 PM) on weekdays. Mid-morning (after 9:00 AM) and mid-afternoon (before 4:00 PM) are quieter. Weekends are generally less crowded, but trains can still be busy on sunny days.

How much does a train ticket from Alkmaar to Amsterdam cost?

A single second-class ticket from Alkmaar to Amsterdam Centraal costs around €8 to €9 with an OV-chipkaart. Prices may vary slightly depending on the retailer. A day pass for unlimited travel might be more economical if you plan multiple trips.

Are there luggage facilities on trains from the North Holland coast?

Trains on this route have luggage racks near the doors and overhead spaces for smaller bags. During peak hours, space can be limited, so try to travel off-peak if you have large luggage. Most trains also have designated areas for bicycles.

Can I buy a train ticket at Castricum station with cash?

Ticket machines at Castricum station accept coins and cards, but many smaller stations only accept card payments. It's advisable to use an OV-chipkaart or buy an e-ticket online in advance to avoid issues.

What is the last train from Amsterdam to Castricum?

The last direct train from Amsterdam Centraal to Castricum departs around 12:30 AM. After that, you may need to take a train to Alkmaar and then a bus or taxi, so check the NS app for exact times on your travel date.

Search live hotel prices in Noord-Holland →
5% back on completed stays · ~1 tonne CO₂ retired per booking

← Noord-Holland's page