Geralt de Rivera is a witcher. Born human but enhanced through experimentation, the purpose of the Witchers is to hunt monsters in a place called The Continent. Geralt helps the locals wherever he goes, but is only true to himself. Early in the series, a princess named Renfri (Emma Appleton) shares prophetic words with Geralt about a “girl in the woods” who is her destiny.
Meanwhile, a girl with elven origins named Yennefer is sold by her father and ends up in Aretuza’s magical school. There she learns to master magic and corrects her physical deformities at the cost of her fertility. She sleeps with a fellow magic student named Istredd (Royce Pierreson) before realizing he’s told the sleazy wizard Stregobor (Lars Mikkelsen) about his elven past. Yen also receives another witch, Fringilla (Mimî M. Khayisa), sent to the Nilfgaardian Empire, then becomes a royal advisor.
When Geralt helps lift a curse preventing the cursed royal family of Cintra from marrying, he jokingly invokes a tradition called the Law of Surprise, which promises him the firstborn of Princess Pavetta (Gaia Mondadori). She is secretly pregnant, so when she dies and the kingdom is invaded by Nilfgaard years later, her daughter Ciri is sent to fetch Geralt for protection. Along the way, Ciri encounters an elf named Dara (Wilson Mbomio) and is pursued by Nilfgaardian forces, aided by Fringilla.
Meanwhile, Geralt and Yennefer (and Geralt’s playboy bard, Dandelion) meet when Yen pursues a djinn’s wish to regain her fertility. Geralt gets the wish instead and seemingly uses it to bind the pair together. Yenn travels with her lover before returning to Aretuza where the mages swear to oppose a Nilfgaardian invasion in the north. During the battle, the mage Vilgefortz (Mahesh Jadu) betrays the alliance. Yen disappears after a fiery display of magic.
Geralt decides to find and protect Ciri, and the fatal pair finally find themselves in the forest.