The mercury had topped 30C in many places last week, with several places experiencing their hottest days ever and the month of June expected to be one of the warmest on record.
But Sunday's rainfall, which was particularly heavy in the Ticino region, put an end to the hot spell.
Within a few hours, several areas recorded rainfall equivalent to more than half the average monthly amount, as well as hail and thunderstorms.
Between 4 and 5am on Sunday morning, 82 millimeters of rain had fallen in Lugano – the highest amount in one hour since 1981. The average rainfall in the city for the entire month of June is 164 mm.
By 7am, the weather station at Crana-Torricella had recorded 136 mm of rain, while Lugano had received 108 and Cadenazzo 53. The heavy rain led to local flooding and landslides, which disrupted traffic, according to SRF Meteo
— SRF Meteo (@srfmeteo) June 25, 2017
In Lugano, 82mm in one hour. Exactly half the average monthly amount.
The north of the country also saw some rain, though not to the same extent, with 5-10C of rain falling around Lake Geneva.
On Monday, weather was warm but cloudly across most of the country, with highs of 27-30C but thunderstorms expected in the south.
But a cold front will sweep in towards the middle of the week, with more storms predicted to affect large parts of Switzerland on Wednesday and Thursday as average temperatures fall to 20-21C.