The current rule
France switches to heure d'été at 2:00 a.m. local on the last Sunday in March, and back at 3:00 a.m. local on the last Sunday in October. Metropolitan France is UTC+01:00 in winter and UTC+02:00 in summer.
France is on the wrong meridian
Geographically, mainland France sits on the Greenwich meridian and should logically keep UTC+00:00 like the UK. It ran on Paris time until 1911 and on GMT until 1940, when the German occupation moved it to Berlin time — and it simply never moved back after the war. The result is that French clocks are already an hour "ahead" of solar time in winter and two hours ahead in summer, which is why sunset in western Brittany can fall after 10 p.m. in June.
Overseas territories
France spans more time zones than any other country, twelve in total, thanks to its overseas departments and territories. Almost none of them observe daylight saving — Saint-Pierre-et-Miquelon, which follows the North American schedule, is the notable exception. Guadeloupe, Martinique, French Guiana, Réunion, Mayotte and French Polynesia all stay on a fixed offset year round.