The movie begins with Kevin sitting in an AA support group saying he thought his relationships with women would change after he stopped drinking. Kevin sees a woman he wants, but loses interest in her after he gets her. He realizes this is not a healthy relationship pattern but doesn’t know how to change it.
Rebecca, a single woman new to the “small town” of San Francisco, meets Kevin, the sexy, but promiscuous bartender at her new job. Although Kevin comes onto her immediately, Rebecca recognizes Kevin’s playboy ways and rebuffs him, however, the two become good friends.
Kevin is Adam’s friend who drives a cab to support himself while he pursues his passion for painting. Adam confides in Kevin about his girlfriend, Nina. Adam thinks she is having an affair, but he also tells Kevin that Nina’s suspected infidelity only bothers him because someone else is paying attention to her. He gives Kevin the analogy that when he was young, he had a toy car that he became tired of, but regained interest in it after his little brother started playing with it. Kevin tells him how messed up that is, but Adam only shrugs it off.
Later, Nina comes home and, when Adam tries to initiate sex, she tells him she is tired. Quickly realizing he may become suspicious, she changes her mind and decides to sleep with Adam, even though she has just come from sleeping with her lover.
Kevin and Nina, who is a chef in a ritzy restaurant, meet in a Catholic church where he tells her that Adam suspects she is cheating on him. Nina is alarmed and asks Kevin if Adam knows who her lover is. Kevin, it turns out, is the man in which she is cheating on Adam with because she was feeling neglected by Adam. The two express guilt over deceiving Adam, but they also acknowledge they can’t stay away from each other. Nina also feels that Adam is not over his ex-girlfriend, Kate, who left him for a woman, Anne, when Kate came out as a lesbian.
Adam, figuring out Kevin is the man sleeping with Nina, confronts him at the bar where Kevin and now also Rebecca work. Kevin tells Adam he wasn’t treating Nina right and tells him he knows that Adam is not truly in love with Nina. Even though Adam knows Kevin is right, he is still angry and smashes a shot glass against the bar wall before storming out.
Rebecca, being new in town and unlucky in love, meets Anne at a coffee shop. Even though she doesn’t have a serious interest in being a lesbian, she decides to sleep with Anne to see if it excites her more than sleeping with men, which has so far been underwhelming for Rebecca. She tells Anne she doesn’t know what the big deal about sex is, saying why should two people huff and puff, rubbing up against each other, when she can accomplish the same thing by herself in two minutes. She and Anne are interrupted during Rebecca’s first lesbian experience by Kate who returns home early after finally coming out of the closet to her parents. She catches Anne and Rebecca in bed together and walks out. Rebecca, realizing she is not really a lesbian, is embarrassed and doesn’t see Anne again.
Kate, who is often seen in monologue with her unseen therapist, is heartbroken after finding Anne with another woman. Anne, it is revealed, has been looking for a reason to break it off with Kate, who is younger and more serious about the relationship. Anne does not like the domestic routine the two have settled into and tells Kate that she has never been very good at monogamy.
After confronting Nina about her affair with Kevin, Adam and Nina break up. Realizing Kate is no longer with Anne, Adam sees it as an opportunity to get back together with Kate, although she tells him it’s not possible. Adam meets Rebecca when he picks her up in his cab on her way to a blind date. They recognize each other from the scene in the bar and are instantly attracted to each other. Although she warns Adam that she is not very comfortable with her own body and doesn’t feel terribly connected to it in bed, Rebecca discovers sex with Adam is better than any experience she has had before.
Kevin, after Nina and Adam break up, tells her that their relationship wasn’t just sex and that he’s in love with her. Nina, knowing Kevin’s past indiscretions of dumping women after he sleeps with them and loses interest, doesn’t believe his love declaration and tells him she doesn’t want to see him again.
Adam and Rebecca are happy until Kate calls him and tells him she wants to get back together and wants him to father a child. He is initially angry with Kate, telling her that her timing is way off and he is now seeing someone. He feels bad about it, but he breaks up with Rebecca and tells her he is getting back together with Kate. Rebecca is hurt and tells Adam that she is the one that broke Kate and Anne up when Kate caught the two in bed and says she supposes that makes her and Kate even. She also tells Adam not to call her when Kate inevitably breaks his heart again.
Kate tries to settle into the rekindled relationship with Adam, but realizing she is really a lesbian, she breaks it off again. This time she tells her unseen, silent therapist that she has decided to stay single and try to get to know herself.
Nina turns up pregnant but doesn’t know if the baby is Kevin’s or Adam’s because she slept with both of them the same night. Kevin still proclaims his love for Nina, but she is still suspect of his feelings. Adam finds out she is pregnant, but with the three of them not knowing whose child it is, everything is put on hold. Adam finally goes to Nina’s place to have it out with her over who is the father of her baby. He finds Nina and Kevin there together who tell Adam that they have decided to get married. Adam is angry but acquiesces seeing that Kevin really loves Nina. Nina tells both of them she doesn’t want to know who is the biological father of her child and tells Adam that she and Kevin are going to raise the child.
Rebecca, hearing everything from Kevin and knowing that Adam won’t call her, goes to see him, where the two resume their relationship.