Rok 1960. Do małego miasteczka Lasquenet w południowej Francji przybywa Vianne Rocher (Juliette Binoche) wraz z kilkuletnią córką, Anouk. Otwierają one sklep z czekoladą. Dość liberalne poglądy Vianne nie podobają się burmistrzowi miasteczka, Comte de Reynaudowi (Alfred Molina), który poprzysięga sobie, że zamknie sklep i przepędzi Vianne. Będzie używać do tego najróżniejszych środków – począwszy od narzucenia młodemu księdzu – ojcu Henriemu (Hugh O’Conor), by wytykał „szatańskie praktyki” Vianne podczas kazań, aż do organizowania grupowego bojkotu, prowadzonego przez energiczną Caroline (Carrie-Anne Moss)…