Young, motherless tomboy Danielle & her father adore one another. Her father dies suddenly just two weeks into his marriage to a baroness (Angelica Huston, a hoot) with two daughters.
Ten years later, Danielle (Drew Barrymore) is being harshly treated as just one of the servants. The stepmother Rodmilla and beautiful daughter Marguerite are cold, demanding & snobbish; daughter Jacqueline is sympathetic and reasonable.
Inconsiderate but eligible Prince Henry (Dougray Scott) mistakes Danielle for a courtier and their paths cross several times, with each meeting growing closer and falling in love. Henry is also maturing and thinking for himself better as a result of their spirited conversations on books, politics, economics & social theory. Scheming Rodmilla, unaware of all this, contrives to put Marguerite in Henry's path as often as possible.
Henry is devastated when Rodmilla outs Danielle as a commoner; Danielle tries to explain but Henry abandons her. Resident artist Signore da Vinci declares to Henry that he doesn't deserve the intelligent and resourceful Danielle, and leaves with him the glass slipper she had dropped in her shamed haste from the masque ball.
Rodmilla sells Danielle to lecherous Monsieur le Pieu. Danielle escapes his castle just as Henry and his guard arrive. Henry apologizes and tells her he wishes to marry the owner of the slipper and she gladly accepts.
Henry's parents (the king and queen) revoke Rodmilla's baroness title; she and Marguerite are both put to work in the castle laundry. Kind-hearted Jacqueline is not punished.
Da Vinci has painted a portrait of Danielle (it resembles the real da Vinci's "Head of a Young Woman") as a wedding gift. Henry tells Danielle that they will live happily "ever after."