쉘비 마을에는 12살의 네 명의 소녀가 살고 있다. 이들은 서로 떨어질 수 없는 사이로, 무서울 것이 없어 남자애들조차 접근을 두려워하는 튼튼한 우정을 자랑한다. 순진하고 수줍음을 많이 타는 소녀인 크리시(리타 윌슨)는 엄마의 성교육 또한 엉뚱한 방향으로 받아들이고, 말괄량이자 남자만 보면 두드러기가 났던 로버타(로지 오도넬)는 핸섬한 남자애 앞에선 기를 못핀다. 육체파 배우가 꿈인 티니(멜라니 그리피스)는 벌써부터 아카데미 수상 소감을 연습하는 맹랑한 소녀이고, 사만다(드미 무어)는 침착하고 얌전하면서도 미스테리 살인사건을 조사하는 냉철함을 동시에 지녔다. 그러던 어느날 밤, 사랑과 영혼과 죽음에 대한 호기심이 많은 이들은 25년전 이들과 비슷한 나이로 죽은 죠니라는 한 소년의 영혼을 불러내기 위해 마을 공동묘지에 모인다. 여기서 우연히 이 소년의 죽음을 둘러싸고 뜻밖의 의혹이 있다는 점을 알게 된다. 이후 네 명의 소녀들 사이에선 보이지 않는 오해와 분열이 일어나고...

고교 동창들인 토미(Tommy "Birdman" Rowland: 맷 딜런 분)와 케브(Kev: 맥스 퍼리시 분), 마이클(Michael "Mo" Morris: 노아 에머리시 분)과 폴(Paul Kirkwood: 마이클 래파포트 분)은 매샤츄세츠의 나이트 리지라는 조그만 시골마을에서 살고 있다. 토미와 케브는 여름에는 건설현장에서 겨울에는 제설작업을 하면서 생계를 꾸린다. 고교시절 캠퍼스의 스타였던 토미는 유부녀가 되어 마을로 돌아온 옛 여자친구 다리안(Darian Smalls: 로렌 홀리 분)에 대한 사랑을 아직까지 유지하고 있다. 다리안도 토미를 잊지 못하고 그가 다시 돌아와 주기를 간절히 바란다. 이런 두 사람의 이끌림으로 인해 토미의 현재 여자친구 샤논(Sharon Cassidy: 미라 소비노 분)은 상처를 입고 그의 곁을 떠나기로 한다. 토미와 함께 살고 있는 폴은 슈퍼 모델에 중독되어 자신의 이상형도 그런 여자여야 한다고 생각한다. 그래서 7년간 사귄 여자 친구 잔(Jan: 마샤 플림프톤 분)을 받아들이기를 거부한다. 이에 잔이 접근할 수 없는 꿈을 바라보며 사는 폴을 떠나 새로운 남자와의 사랑을 시작하자 폴은 질투를 느낀다. 동창생 그룹 중 유일한 기혼자인 마이클은 고교시절의 여자친구와 결혼해 두명의 아이를 낳고 정상적인 가정 생활을 즐기고 있다. 뉴욕의 바를 전전하며 피아노를 연주하는 윌리(Willie Conway: 티모시 휴튼 분)는 인생의 전환점에 서 있다. 그는 유능한 변호사 트레이시(Tracy Stover: 아나베스 기쉬 분)와 살고 있지만 그 관계를 인정할 수 없는 한편, 자신의 직업에 대하서도 회의적이다. 그는 이런 복잡한 심정을 안고 몇 주간 생각을 정리하기 위해 토미 등 고교동창생들이 기다리고 있는 고향마을로 돌아아오는데...