There are 4 ways to get from Barcelona to Puigcerdà by bus, train, car or rideshare

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

Recommended option

Bus  •  2 h 48 min

$30 - $45

Cheapest option

Train  •  3 h 7 min

  1. R3

$7 - $11

2 alternative options

Drive  •  2 h 24 min

  1. 102.7 miles

$19 - $28

Rideshare  •  2 h 17 min

  1. 110.3 miles


What companies run services between Barcelona, Spain and Puigcerdà, Spain?

ALSA operates a bus from Barcelona to Puigcerdà once daily. Tickets cost $30 - $45 and the journey takes 2 h 48 min. Alternatively, Barcelona Cercanías (RENFE) operates a train from Barcelona to Puigcerdà every 4 hours. Tickets cost $7 - $11 and the journey takes 3 h 7 min.

Train operators
Barcelona Cercanías (RENFE)
900 41 00 41
Train from Barcelona Plaça Catalunya to Puigcerdà
Ave. Duration
3 h 7 min
Every 4 hours
Estimated price
$7 - $11
Schedules at
Bus operators
Other operators
Rideshare from Barcelone to Puigcerdà
Ave. Duration
2 h 17 min
Once daily
Estimated price
Book at

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.

Questions & Answers

The distance between Barcelona and Puigcerdà is 118 km. The road distance is 164 km.

The cheapest way to get from Barcelona to Puigcerdà is to train which costs 6€ - 10€ and takes 3 h 7 min.

The quickest way to get from Barcelona to Puigcerdà is to rideshare which takes 2 h 17 min and costs 9€.

Yes, there is a direct train departing from Barcelona Plaça Catalunya and arriving at Puigcerdà. Services depart every four hours, and operate every day. The journey takes approximately 3 h 7 min.

Yes, there is a direct bus departing from Ronda Universitat - Barcelona and arriving at Puigcerda. Services depart once daily. The journey takes approximately 2 h 48 min.

The bus from Ronda Universitat - Barcelona to Puigcerda takes 2 h 48 min including transfers and departs once daily.