Dr. Wilbur Larch (MICHAEL CAINE) is a caring physician who runs an orphanage in St. Clouds, Maine in 1943. With the help of Nurse Edna (JANE ALEXANDER) and Nurse Angela (KATHY BAKER), Larch delivers babies from unwanted pregnancies while also performing covert and, at the time, illegal abortions for others.
His main assistant, however, is Homer Wells (TOBEY MAGUIRE), a young man who has grown up and spent his entire life at the orphanage. Despite never attending high school, let alone a medical institution, Homer helps deliver babies and cares for the other kids, including Buster (KIERAN CULKIN), Fuzzy (ERIK PER SULLIVAN), a sick little boy, and Mary Agnes (PAZ DE LA HUERTA) who has a crush on Homer. He does not, however, perform any abortions as he doesn't agree with the procedure on moral grounds.
Things change for Homer upon the arrival of Candy Kendall (CHARLIZE THERON) and her air force boyfriend, Wally Worthington (PAUL RUDD). Candy is pregnant and has arrived for an abortion, and when she and Wally leave, Homer asks if he can go with them. While no one is happy to see Homer depart, especially Larch, the young man is excited about seeing the rest of the world that lies outside the orphanage.
Despite his medical skills, Homer agrees to take an apple-picking job at an orchard run by Wally's mother, Olive Worthington (KATE NELLIGAN). There, working for the orchard boss, Mr. Rose (DELROY LINDO), Homer finds happiness working alongside Rose's daughter, Rose Rose (ERYKAH BADU), as well as migrant workers such as Peaches (HEAVY D), Jack (EVAN DEXTER PARKE) and Muddy (K. TODD FREEMAN).
Yet, with Wally now back off in the war, the friendship between Homer and Candy turns into something more. As he tries to sort out his feelings about her and the discovery of an incestuous relationship, Homer must decide about his future and whether or not it includes his previous life with Larch and the rest of the gang back at the orphanage.