Rome2Rio

How to get fromHaarlem to Barcelonaby plane, train (Eurostar, TGV, Renfe), bus, car, train, or train (TGV, Renfe)

Find Transport to Barcelona

See all options

There are 10 ways to get from Haarlem to Barcelona by plane, train (Eurostar, TGV, Renfe), bus, car, train, or train (TGV, Renfe)

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.

  1. Fly Amsterdam Airport Schiphol to Barcelona–El Prat Airport

    best
    1. Fly from Amsterdam Airport Schiphol (AMS) to Barcelona–El Prat Airport (BCN)plane plane AMS - BCN
    5h 19m
    €74–250
  2. Train to Brussels Airport, fly to Barcelona–El Prat Airport

    cheapest
    1. Take the train from Amsterdam Centraal to Anvers-Centraltrain train
    2. Fly from Brussels Airport (BRU) to Barcelona–El Prat Airport (BCN)plane plane BRU - BCN
    7h 21m
    €56–307
  3. Train via Lyon

    1. Take the train from Haarlem to Rotterdam Centraaltrain train
    2. Take the train from Rotterdam Centraal to Brussel-Zuid / Bruxelles-Miditrain train
    3. Take the train from Brussel-Zuid / Bruxelles-Midi to Lyon Part Dieutrain train Tgv
    4. Take the train from Lyon Part Dieu to Barcelona-Santstrain train
    13h 7m
    €272–505
  4. Bus

    1. Take the bus from Amsterdam City Center - Sloterdijk to Barcelona - North Bus Stationbus bus BlaBlaCar Bus
    24h 58m
    €112–183
  5. Drive  1,483.4 km

    1. Drive from Haarlem to Barcelonacar car 1,483.4 km
    15h 44m
    €273–394
  6. Train to Rotterdam The Hague Airport, fly to Barcelona–El Prat Airport

    1. Take the train from Haarlem to Den Haag Laan v NOItrain train
    2. Fly from Rotterdam The Hague Airport (RTM) to Barcelona–El Prat Airport (BCN)plane plane RTM - BCN
    6h 15m
    €210–570
  7. Train to Eindhoven Airport, fly to Barcelona–El Prat Airport

    1. Take the train from Amsterdam Sloterdijk to Eindhoven Centraaltrain train
    2. Fly from Eindhoven Airport (EIN) to Barcelona–El Prat Airport (BCN)plane plane EIN - BCN
    7h 16m
    €87–330
  8. Fly Amsterdam Airport Schiphol to Girona–Costa Brava Airport, bus

    1. Fly from Amsterdam Airport Schiphol (AMS) to Girona–Costa Brava Airport (GRO)plane plane AMS - GRO
    2. Take the bus from Girona Costa Brava Airport to Barcelona, Estació d'Autobusos Nordbus bus
    6h 18m
    €115–302
  9. Train

    1. Take the train from Haarlem to Rotterdam Centraaltrain train
    2. Take the train from Rotterdam Centraal to Bruxelles-Miditrain train Ec / ...
    3. Take the train from Brussel-Zuid / Bruxelles-Midi to Perpignantrain train Tgv
    4. Take the train from Perpignan to Barcelona-Santstrain train Tgv
    14h 14m
    €273–465
  10. Train, bus

    1. Take the train from Haarlem to Roosendaaltrain train
    2. Take the train from Roosendaal to Brussels-Nordtrain train Ec
    3. Take the bus from Brussels-North train station to Perpignanbus bus
    4. Take the bus from Perpignan to Barcelona, Estació d'Autobusos Nordbus bus
    25h 50m
    €144–235

Haarlem to Barcelona by train

Calendar16Weekly Trains
Duration13h 7mAverage Duration
Ticket€272Cheapest Price
See schedules

Comparing Your Travel Options

What companies run services between Haarlem, Netherlands and Barcelona, Spain?

Vueling Airlines, Transavia Holland, and two other airlines fly from Amsterdam Airport Schiphol (AMS) to Barcelona–El Prat Airport (BCN) hourly. Alternatively, you can take a train from Haarlem to Barcelona-Sants via Rotterdam Centraal, Brussel-Zuid / Bruxelles-Midi, and Lyon Part Dieu in around 13h 7m.

Airlines
Train operators
Bus operators

Want to know more about travelling around Spain

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

Booking & Getting There