Emily St. Aubert gets yanked out of her cushy life at La Vallée when her mom dies and her dad takes her on a trip all over France. Em's dad also dies on the trip, but not before she meets a hunky stranger named Valancourt who falls for her hard. Madame Cheron, Em's nasty aunt and new guardian, whisks Em away to her estates in Tholouse and lets her get engaged to her beloved Valancourt.
Things get all topsy-turvy when Madame Cheron marries Signor Montoni, an Italian gentleman who puts the kibosh on Em's romance with Valancourt and moves the whole fam to his mansion in Italy.
Em's aunt and Montoni trick her into getting engaged to slick-Rick Count Morano, but then they all make a hasty exit for Montoni's other residence, Udolpho. There, Em gets hit hard by the triple whammy of a kidnapping attempt by Count Morano, her aunt's death, and Montoni forcing her to sign all of her properties away. Em makes her escape from Udolpho and hops a ship back to France.
Em's boat happens to wash ashore at the creepy chateau she passed with her father way back in Act I. There, she buddies up to the de Villeforte family and hears some scary rumors about how the late Marchioness died.
Valancourt makes a quick appearance, but he's wrecked his chances with Emily by gambling and doing some time in a Paris prison. After Em thinks she sees a ghost in the Marchioness's chamber, the de Villefortes send Ludovico to spend the night in the haunted room. He disappears, only to turn up at a fortress full of bandits that the de Villefortes stumble across in the woods with a crazy story about how he was kidnapped by smugglers.
A guilt-wracked nun named Agnes confesses to Em that she's the one who killed the Marchioness in an attempt to get with her husband, the Marquis. Em gets her property back from Montoni, realizes that the Marchioness was her dad's sister, and gets hitched to Valancourt after his name is cleared. Finis!