Spring and fall are ideal times to visit nearly all of Spain, with the possible exception of the Atlantic coast, which experiences heavy rains in October and November. The shoulder months of May and October are the best months to travel in terms of both weather and crowds. At these times you can rely on temperate weather and avoid summer's heat.
Winters are coldest in high-altitude central cities like Madrid and Toledo, where temperatures drop as low as 34 degrees Fahrenheit. Mountain resort areas like Sierra Nevada and the Pyrenees can even get some snow. The northern coast will be warmed slightly by the Atlantic, while Galicia on the country's northwestern tip is extremely wet -- expect up to 20 days of rain a month during the winter. Much of Andalusia will be mild and sunny, but Costa del Sol's temperatures won't be warm enough for sunbathing. Advantages of the winter low season include cheaper airfare and accommodations and fewer crowds, though some attractions may operate on reduced schedules.
Festivities leading up to Christmas, including Inmaculada and Dia de Santa Lucia, dominate December. January begins with Three Kings Day celebrations and the Tamborrada drumming festival in San Sebastian. February is carnival month, and the biggest events are in Cadiz and the Canary Islands.
The entire country slowly begins to warm in March. Spring is an ideal time to visit the central regions of Castilla and Andalusia, the Mediterranean Coast and the Balearic Islands where temperatures go from mild in March to hot in May. The rest of the country enjoys temperate weather with occasional cool days and rain.
Celebrate St. Joseph’s Day with Las Fallas in Valencia on March 19. Then comes Semana Santa de Sevilla, one of Seville’s biggest festivals, a weeklong event leading up to Easter Sunday. Soon after is the Feria de Sevilla, centered on bullfighting and flamenco. May brings the Festival de San Isidro in Madrid and Feria de las Cruces in Cordoba.
Although summer in Spain is hot, it is the country's busiest tourist season. It’s particularly warm in central cities like Madrid and Seville, where temperatures reach up to 113 degrees Fahrenheit. Many places are closed at this time, especially in August, but major tourist attractions, museums and art galleries will still be open.
Spain’s coasts are the most popular places in the summer. Touristy areas such as Costa del Sol, Costa Brava and Costa Blanca will be full of foreigners while some of the more out-of-the-way beaches in Galicia and Oviedo are popular with Spaniards. Barcelona experiences cooler temperatures but is also more humid. This is the best time of year to visit the northern regions of Spain, when cool temperatures average around 70 degrees Fahrenheit.
The running of the bulls in Pamplona takes place during the San Fermin Festival in July. August sees the Feria de Malaga, Andalusia’s biggest summer festival, and the raucous Tomatina Tomato Festival, billed as the “world’s biggest food fight” and held in Bunol, near Valencia.
September enjoys pleasantly warm temperatures while October and November bring cooler weather. This is one of the best times to visit central cities such as Madrid and Salamanca, as temperatures are mild with sunny days and blue skies. Tourists can take advantage of the mostly pleasant weather and fewer crowds. Snowfall in the mountains can start as early as October.
In September, celebrate Festa de Santa Tecla in Tarragona and Festa de Merce in Barcelona. The Bienal de Flamenco, Spain’s biggest flamenco festival, takes place every two years in Seville in September and October. Jazz and film festivals are also popular in the fall.