The journey from Madrid in central Spain to Barcelona on the east coast takes between 3 and 3.5 hours depending on the time of day you travel. Starting from Madrid-Puerta de Atocha the route passes through Guadalajara, Zaragoza and Lleida before arriving at Barcelona Sants station.
The journey times and duration quoted here are using the fast AVE service.
We'd recommend using this service for the trip as the intercity route takes considerably longer. Providing you don't travel at peak times this is a very straight-forward journey allowing you to see two amazing Spanish cities in one day!