Madrid to Salamanca by TrainThe train from Salamanca to Madrid takes about 2h30 and costs under 20 euros, which is similar to the bus. The train stations in both cities are closer to the center, so take the train.
Renfe.es, Spain's official rail website, is a mess and has been described as "like Alice in Wonderland, where nothing seems to be what it really is" by Trip Advisor.
Residents of Canada and USA should instead use Rail Europe and get their tickets delivered to their home address. Citizens of other countries should also use the link below to check timetables but buy tickets in person.
Book Train Tickets in Spain with Rail Europe
Trains from Madrid to Salamanca depart from Chamartin train station. Read more about Bus and Train Stations in Madrid.
Madrid to Salamanca by BusThere are regular buses throughout the day between Madrid and Salamanca. The journey takes two-and-a-half hours and costs under 20 euros. This is similar to the train.
This ticket can only be booked at Avanzabus.com, which is an awkward site. I recommend using it for the timetable and then buying in person at the station.
Buses from Madrid to Salamanca depart from Mendez Alvaro bus station. Read more about Bus and Train Stations in Madrid
For most other bus tickets in Spain, use this site:
Book Bus Tickets in Spain
Madrid to Salamanca by CarTake the A-6 to AP-6, AP-51 and the A-50 to travel by car from Madrid to Salamanca. The 215km journey takes just over 2h30.
My advice is to spread this trip over an entire day, stopping at both Segovia and Avila on your way, finishing in Salamanca in the evening.
Compare Car Rental Rates in Spain
Flights from Madrid to SalamancaThere are no flights from Madrid to Salamanca.
Compare Prices on Flights in Spain