Elaine "Ellie" Harrison, a self described "tall, geeky" teenage girl going into her junior year of high school, temporarily moves to Annapolis, Maryland with her eccentric parents, who are medieval history professors on sabbatical.
One day while running in a nearby park, she comes across a strangely-familiar seeming and extremely attractive teenage boy, who she later sees with two other teens; a guy and a girl.
The other two young people she saw that day in the park are his best friend, Lance Reynolds, the football team's guard, and Jennifer Gold, the stereotypically gorgeous head cheerleader, and Will's girlfriend.
Ellie meets them all at a post-football game party at Will's house, and accidentally discovers that Lance and Jennifer are having an affair behind Will's back, which the unsettling Marco lets on he knows about too.
Ellie later skips class to confront Morton at his home about him being a member of the "Order of the Bear," a fraternal organization who believe that King Arthur will be reincarnated.
Back at school, Ellie witnesses a confrontation that reveals that Will's purported stepmother is actually his biological mother, making Marco Will's half brother, just as Mordred and Arthur were.
Ellie assists Will at a final confrontation with Marco by bringing him a medieval sword which her father was studying, revealing that her actual analog is the Lady of the Lake, who provides Arthur with Excalibur in the legend.
The climactic battle scene, which in the book takes place in the ravine, in the film occurs in the school theater (which magically becomes a beach).