Spain is a large country with varying topography and beautiful sites throughout its territory. Traveling through Spain can be one of the most rewarding adventures, and doing so is fairly easy. Major Spanish cities are connected in a various number of ways. You can plan out a trip using a series of one-way flights, train trips, ferries, bus rides or car rentals.
Look into low-cost European airlines. European airlines can connect many major cities in Spain cheaply. Quick and easy, going from Barcelona to Madrid can cost as low as $40 each way. Flights leave several times a day and are great if you have an exact itinerary in mind. Flights are also the ideal way to reach Spanish islands, the Canary Islands and the Balearic Islands.
Find out train schedules. In Europe, the train can be a cheap alternative, sometimes even cheaper than flying, and can offer some scenic views of the countryside. Renfe is the Spanish rail service which offers thorough and often cheap service. For example, a train from Madrid to Granada can cost as low as $20 or (14 euros) one way. Trains also can save you time by allowing you to go to sleep in one city and awake in another. Overnight and high-speed trains connect major cities Barcelona and Madrid. Train timetables are available online, and you can see the Resources below for a link.
Consider car rental. Car rental is a viable option in many parts of the country. The plains of the country are easy to drive in, and the Spanish drive on the left side. A large number of major highways connect major and even smaller cities. If you are considering a tour of the smaller seaside cities, such as Malaga and Majorca, renting a car is highly recommended.
Look into buses. If renting a car isn't an option, Spain is very well-connected through the Alsa bus service. Check the Alsa website for timetables.
Check out ferries. If traveling out of a port city, you may be able to reach the Canary and Balearic islands by ferry. See the Resources below for a link to a site that allows you to book ferries from Spain to its neighboring islands.