Exploring Barcelona by bus is inexpensive, fun, and sometimes uncomfortable. You would be charged less for a ticket that would probably cost more if you took a plane or train ride. You also get to appreciate those beautiful sights on the road while on your way to the city. Buses runby Alsa (Address: c/Miguel Fleta 4, 2 28037 Madrid / Phone: 902 422 242), Estació del Nord (Address: Carrer d’Ali Bei 80; Arc de Triomf / Phone: 902 303 222), Eurolines and Linebús can transport you to this scenic and historic city.
Bus from Madrid to Barcelona
Although travel by bus normally takes a longer time to reach your destination, it is still worthwhile to travel this way because of its cost effectiveness. Fare ranges between €28 and €47 depending on the time of travel. As for return trip, fare price is from €51 to €90. It usually takes around 8 hours to reach Barcelona from Madrid by bus.
Bus from London to Barcelona
While many travelers enjoy taking the bus from London to Barcelona to marvel at the sceneries along the way, others do not relish sitting in a bus to reach the Barcelona. In fact London-Barcelona buses are very limited: one National Express bus leaves Victoria Coach Station every Friday, with a transfer in Lyon. And the entire journey is, well, 28 hours!
Bus from France to Barcelona
Considering the cost of flying so insanely cheap when booked at the earliest time in advance that it seems it steals a good lump of the bus market to the city. But you can still reach to travel to Barcelona by bus from as France.
A bus ride from Paris costs €31 (1 departure per day), €28 from Marseille (round trip promo, 2 departures per week), €27 from Toulouse (round trip promo, 6 departures per week), €38 from Nice (3 departures per week), and €57 from Bordeaux (3 departures per week).
All in all a bus ride to Barcelona is certainly cheap and enjoyable. But It can get very uncomfortable considering the length of travel time.
Note: Do not worry if you do not see a bathroom on the bus. The Spanish law requires bus drivers to pull into a rest stop every few hours.