Most part of Spain is well covered with the help of public transport. The rail and road network reach all the major provinces and towns. There are also proper ferry services connecting the main land to the islands.
Spanish airlines are quite expensive, but it is a comfortable way of travelling between the cities. There are frequent flights between Barcelona and Madrid and to other locations as well. Going to the islands like Canaries is better by airways as it saves a lot of time.
The Spanish national rail carrier is RENFE, which is one of the most convinient options of travelling within the country. Though the long distance trains are always on time, there are some delays in the short distance carriers. The long distance trains need to be reserved in advance, especially during the tourist season. The RENFE website allows you to book the tickets in advance. Most of the Media Distancia or the medium distance trains also need reservations. There are AVE high speed trains from Madrid to Barcelona which is faster than air travel.
Taking a bus is the easiest option to roam in Spain. All the major cities and towns are connected point to point and the buses are also very frequent. The two major bus companies in Spain are Grupo Alsa and Grupo Avanza. One can book the bus tickets online. Moving around in a car is an expensive option as well as it is difficult to find proper parking places in the city. But cycling is a really good option while roaming around in a city. There are cycling lanes in almost all the cities.
Spain is famous for its islands and private yachts. One can enjoy destinations like Costa Brava, Costa Blanca, Canary Islands and the Balearic islands by boat. There are yachts and boat rentals in Spain along with various luxury yachts.