Dunstan Thorn lives in the tiny town of Wall, and when he's eighteen, he crosses through the wall to attend the once-every-nine-years Faerie Market. He's told he'll get his Heart's Desire, which in this case means shacking up with an exotic-looking slave woman. Nine months later, when he's already married a girl in Wall, a baby in a basket shows up at the gap in the wall. The baby is Tristran, Dunstan's son. Oops.
Tristran grows up never quite fitting in. When he's seventeen, he develops a crush on local beauty Victoria Forester, and makes a bid for her hand in marriage, or at least a kiss. He says he'll go fetch a falling star for her sake, and she's all sure, whatever about it, saying she'll grant him his heart's desire if he brings her back that star. So Tristran sets off beyond the wall, into Faerie.
At the same time, a group of three ancient witch-sisters, a.k.a. the Lilim, want to go retrieve the star and cut out her heart (yes, the star is a lady), so they can regain their youth. And the three remaining sons of the Lord of Stormhold—Primus, Tertius, and Septimus—also set out looking for the star, since their dying father's topaz necklace is what knocked her out of the sky, and the two are now tied together.
In other words, there's a ton of folks now looking for the star. Septimus manages to bump off Tertius in an inn using poison, though, while the witch-queen who's sent out on behalf of her sisters enchants a boy into a goat to help pull her cart.
Once in Faerie, Tristran befriends a small hairy fellow, who met his dad way back at that fateful Faerie Market. Tristran helps get him out of a scrape, so the small dude pledges to help him. He gets Tristran a candle that'll transport him miles at a time as long as it's lit, and Tristran uses it to reach the star, who is a very pale young woman with a broken leg from her fall. She refuses to go with Tristran, the candle burns out, and they're stuck deep in Faerie. Tristran uses a silver chain to attach them to one another, further earning the star's ire.
Tristran makes the star a crutch so they can start walking back to Wall. When they break up a fight between a lion and a unicorn, though, the unicorn, though wounded, gives the star a lift. Tristran unchains the star so he can go get some food for himself (stars apparently don't eat), and he comes back to find her escaped. Shocking.
Luckily a tree is there to help him out with some advice. Following it, Tristran catch up to a carriage driven by Primus. The weather turns crappy, so they seek shelter in an inn… the same inn where the witch-queen is planning to murder the star and cut out her heart.
All hell breaks loose. The witch-queen kills Primus and the unicorn, and Tristran and the star just barely escape using the candle, which strands them high in the sky and also burns Tristran's hand pretty badly.
Luckily a flying ship takes them aboard, and the captain is all cool and stuff, so he and his crew take care of Tristran and the star (who by now has revealed her name to be Yvaine) until they can let them off nearby. They make a bargain with Madame Semele, who agrees to give Tristran safe passage to Wall but totally ignores Yvaine, thanks to a curse the witch-queen placed on her.
The witch-queen kills Septimus while he's trying to avenge his brother's death, and she misses Yvaine as she passes right by her as part of Madame Semele's caravan (since Madam Semele is oblivious to her presence). Oops. Everyone finally reaches Wall.
Tristran meets Victoria, who apologizes for sending him on that quest, and tells him she wants to marry Mr. Monday. Gee thanks, lady. So Tristran releases her from her oath and tells her to go ahead and marry Mr. Monday. It's good he didn't bring Yvaine over with him to Wall anyway, since she would've been transformed into the hunk of dead rock that she'd be in the non-magical world.
Tristran and Yvaine finally kiss, and when the witch-queen catches up, it's not worth killing the star anymore since her heart is no longer her own. Ha. This means that the moon has lost her daughter in the same week that two Mondays marry, which frees Madame Semele's slave from her captivity. Turns out the slave is Lady Una, sister to the lords of Stormhold.
So—surprise—Tristran is the rightful heir to Stormhold, and Yvaine gives him the topaz stone that knocked her from the sky. Lady Una goes ahead to Stormhold and rules as regent until Tristran and Yvaine show up after wandering the world for a few years. She's a good ruler, and Tristran is too. Eventually he dies, and Yvaine rules Stormhold, gazing up at the stars at night.