Morocco’s climate is very diverse, varying with the season and region. In general the country has a tropical climate, with temperatures reaching as high as 35°C (95°F) and as low as 5°C (41°F) in the Sahara. The coast has a warm, Mediterranean climate tempered on the eastern coast by southwest trade winds whilst inland areas have a hotter, drier, continental climate. In the south of the country, the weather is very hot and dry throughout most of the year, though temperatures can drop dramatically at night, especially in the months of December and January.
Rain falls from November to March in coastal areas, and the country is mostly dry with high temperatures in summer and a cooler climate in the mountains. Marrakech and Agadir enjoy an average temperature of 21°C (70ºF) during the winter.
Owing to the relatively high winter temperatures, and summers that are dry rather than unbearably humid, Morocco is an all-year round destination. If you really want to avoid the heat, the best time to visit is during the shoulder seasons of April to May, and September to November.