Believe it or not, Morocco is a country where you easily could start the day with a walk around a true oasis, then go skiing in the mountains and end the day with a swim in the ocean.
Being a country right on the border to Sahara, on the ocean and with some of the highest mountains of Africa, Morocco has several climatic zones.
The coast south to Agadir is for summer holidays really, season being from April to October (Essaouira is May to September). With a little bit of luck, season lasts all year from Agadir and south.
The interior is best in fall and spring. Winters can be quite cold at nights, but no hindrance really. Summers in the interior can be terrible.
Skiing is possible at least two places, Mischliffen and Ouka´meden, with a brief season January to March. Snow is slightly unreliable, though, but in general, skiing is possible every year.
The south of Morocco is best in winter, late fall and early spring.
Except for summer time, Morocco is the country for which you both pack a sun hat and sun glasses, as well as warm jacket and an umbrella.