Nell'Italia del XVII secolo, una giovane levatrice accusata di stregoneria deve scegliere tra un amore maledetto e il compimento del suo onorevole destino.
La trama si svolge nel XVII secolo a Serra, un villaggio immaginario vicino a Roma, e ruota attorno a donne accusate di essere streghe, che si difendono e combattono. È basato sulla trilogia di romanzi Le città perdute di Tiziana Triana.
Natalia, un'anziana levatrice, chiede alla nipote Ade di aiutarla durante la difficile nascita di un bambino. Mentre il bambino sta morendo, la donna incinta, Agnese, si spaventa e le manda via, accusandole di stregoneria. Tornata a casa, Natalia dice ad Ade che potrebbe possedere degli antichi poteri; nasconde un libro misterioso in casa e le insegna un incantesimo per recuperarlo. Poi le dice che dovrebbe cercare le Città Perdute nel caso in cui non dovesse tornare. Natalia fugge ma viene presto catturata da un gruppo di cacciatori di streghe chiamati Benandanti.
Un giovane di nome Pietro studia a Roma con un professore di medicina che spiega ai suoi studenti che la stregoneria non esiste e che solo la conoscenza scientifica può portare alla verità. Quando torna a casa per curare la malattia di sua madre, scopre che suo padre Sante, il capo dei Benandanti, crede che la stessa strega che avrebbe ucciso il bambino di Agnese sia la fonte della malattia. I tentativi di Pietro di dimostrare che il bambino è morto per cause naturali vengono respinti dal prete locale, padre Tosco, che insiste sul fatto che si tratta di una strega.