Spanish Railways (RENFE) operates a train from Madrid Airport (MAD) to Zamora every 2 hours. Tickets cost $30 - $45 and the journey takes 1 h 59 min. Alternatively, you can take a bus from Madrid Airport (MAD) to Zamora via Salamanca in around 4 h 9 min.
How to get from Madrid Airport (MAD) to Zamora
From Aeropuerto T4 train to Madrid-Chamartin then train to Zamora. 3 h 14 min £30. From Madrid-Barajas Airport bus to Salamanca then bus to Zamora. 4 h 9 min £42. From Madrid Airport (MAD) drive to Zamora. 2 h 36 min £27.