The train journey from Barcelona-El Prat Airport to Madrid takes 2h 45m on average and covers a distance of 314 miles.
Renfe is the only train operator serving this route.