Clay (Andrew McCarthy), Blair (Jami Gertz), and Julian (Robert Downey, Jr.) are best friends living in Beverly Hills. After graduating high school together, Clay goes to college on the East Coast, Blair (Clay's girlfriend) becomes a model, and Julian wants to start a record label. Before leaving, Clay asks Julian to watch over Blair while he is gone. But when he comes home for Thanksgiving break, he discovers Blair and Julian sleeping together. He goes back east and vows to have nothing to do with either of them anymore.
When Clay comes home for Christmas break, he hears from Blair, who tells him that Julian's record deal fell through and is now into drugs and deeply in debt. Clay isn't sure whether or not to help his former friends, but his spending time with Blair has rekindled that relationship, and Clay agrees to help Julian. Julian owes $50,000 to local drug dealer Rip (James Spader), and has become a prostitute to pay for his crack and heroin addictions. His family kicked him out of the house because of his dishonesty and stealing, and is living in Blair's apartment. Blair has also become a drug user, picking up a cocaine habit from her fellow models.
Clay's attempts at helping Julian is hit or miss, but he is able to get Blair to kick her cocaine habit. Julian also wants to get clean, but he keeps getting hooked again by Rip. Clay and Blair finally confront Rip and are able to get Julian away from him. Clay then vows to take both Blair and Julian back east with him so they can start new lives. However, Julian dies later that night due to a heroin overdose. At the funeral, Clay begs Blair to come east with him to get away from LA once and for all, and she agrees. The final shot of the movie is a picture of the three of them at their high school graduation, showing the last time they were happy together.