The film opens with a voice-over (done by producer Martin Scorsese) where it's explained that bettors at racetracks will deliberately bet high on certain horses to lower the odds and earn more money.
40-year-old veteran con artist Lily Dillon (Angelica Houston) works for a Baltimore gangster, Bobo Justus, who has her place such bets on horse races. After collecting the earnings, Lily opens a hidden compartment in the trunk of her car and skims several thousand dollars from the payoffs and hides it among the other money she's stolen from Bobo. One of Bobo's associates calls her in New Mexico and tells her to go to the downs in La Jolla. Lily agrees and says she'll stop by Los Angeles to see her son.
In L.A., Roy Dillon (John Cusak), Lily's 25-year-old estranged son, works several small-time cons. One of his tricks is showing a bartender a $20 bill then slyly switching it for a ten, fooling the bartender in to giving him change for a $20. One day, Roy is caught by one of his marks who seizes his arm and jabs him hard in the chest with the end of a club. Roy manages to walk out of the bar and make it home. While he lays in pain in his bed, he dreams of his first meeting with the man, Mintz, who taught him how to con people. Mintz' advice to Roy, and one of his steadfast rules, was to never take a partner in a con - it can only end in ruin.
That night Roy's 35-year-old girlfriend, Myra Langtry (Annette Benning), a grifter herself, stops by and they have sex. The next day, Lily shows up at Roy's place and the two have a tense conversation where Roy points out that Lily hasn't contacted him in eight years. The conversation becomes more intense, with Roy feeling great resentment over their falling out. Lily notices that Roy is incredibly ill and feverish and has him taken to a hospital where he's treated for internal bleeding to the injury to his abdomen and lives.
Both Lily and Myra visit Roy in the hospital and there is instant animosity between the two. Lily sees Myra as a bad influence and Myra believes there may be an incestuous relationship between mother and son. Lily calls in the young and attractive nurse that's been tending to Roy and tells her son that she'd hired the nurse to take care of Roy after he leaves the hospital. Roy rebuffs the nurse by telling her that his mother hired her so he would have sex with her.
Meanwhile, Myra returns to her apartment where the landlord insists she pay her past due rent immediately. She tells him she's good for it as she has always paid up, one way or another. He insists he wants cash this time. She tells him to come in and offers sex instead.
Driving back to La Jolla, Lily gets stuck in a traffic jam and misses her chance to fix a race with a potentially large payoff for Bobo. When she leaves the track, she's met by Bobo (Pat Hingle) himself who orders her to take him to his hotel. On the way he asks Lily why she missed the race, she tells him she was taking care of her son, whom Bobo had never known about.
At his room, Bobo punches Lily in the stomach and orders her to get him a towel from the bathroom. He gives her a few pounds of oranges and asks her about the insurance scam that people use: when someone is hit repeatedly with a towel full of oranges, they get large bruises used to make insurance claims. If the method is done improperly, then it can cause severe internal damage. Bobo makes as though he's going to beat Lily with the oranges and stops, pinning her to the floor and burning her right hand with a lit cigar instead. Lily later leaves on good terms with Bobo.
Roy returns to his apartment and sees Myra. They take a train ride for a romantic weekend getaway and during the trip Roy cheats some sailors at a dice game. Myra sees him at work and later tells him she recognizes his work as a grifter. He refuses to admit what he does at first, but then admits it's true. He asks what's her con, and she says she's a long con. He tells her "you can't do a long con alone".
In a long flashback sequence, Myra describes her association with a con man named Cole (J.T. Walsh), and how they took advantage of wealthy marks in business cons, including a greedy oil investor, Gloucester Hebbing (Charles Napier). Myra and Cole would set up their con in a plush office building they rented out to appear legitimate which culminates in a fake FBI raid with a fake shooting of Myra to discourage Hebbing from going to the police. Back in the present, Myra further explains that Cole "retired" from the con business a few years ago, which he actually went insane and was committed to an insane asylum.
Later, Myra follows Lily to the horse track and covertly observes Lily placing her skimmed profits into the concealed compartment in her car's trunk. Myra tells Roy that she saw his mom at the track and tries to persuade him to join her in the long con. Roy continues to be distrustful of Myra. She visits Roy at his apartment and tells him she's found a good con and she needs $10,000 to fund the con. He doesn't believe her, and she implies he's having an incestuous relationship with his mother. Roy strikes her and orders her to leave.
Roy calls his mother Lily and asks to meet with her "as adults". He agrees to drive to her place for a visit that night. Myra exacts her revenge on Roy by making a phone call to Bobo by telling him that Lily has been skimming. A friend in Bobo's organization calls Lily and tips her off that Bobo knows about the skimmed profits she's keeps in her car trunk. She leaves immediately and drives away. Two of Bobo's men show up at her hotel room a few minutes later to find her abandoned belongings and her flashy gold and cream colored Cadillac gone. After they leave to report to Bobo about Lily's disappearance, Roy arrives at the hotel shortly afterward and also finds his mother has left.
After driving most of the night, Lily finds a room at a desert hotel in Arizona and Myra follows her. She uses a master key to get into Lily's room and attacks her while she's asleep in bed.
The next day the Phoenix police calls Roy and ask him to come to Phoenix and to the hospital to identify his mother's body, who has died of an apparent self-inflicted gun shot to the face. They need Roy to view the body because they don't have any fingerprints or other identification they can use. Her face is disfigured and unrecognizable, but Roy notices that there's no cigar burn on the corpse's hand. He still confirms to the police that the body is his mother's.
When he arrives home, he finds his mother Lilly in the process of packing his money stash, hidden in the back of picture frames, into a suitcase. He confronts her, and she tells him she shot Myra in self-defense and arranged the scene to appear as though Myra's body was actually Lilly's. Lily is trying to make Bobo believe she's dead.
Lily insists she needs Roy's money to flee, but Roy tells her she has to get a square job and lay low if she wants to survive. He refuses to let her take his money saying he intends to get out of the rackets too. She tells him she'd go to any length to get free of the rackets. She begs him, then tries to seduce him, and even tells him he's not really her son. Roy is disgusted and rejects her. Lilly angrily swings the suitcase containing the money at him and accidentally hits a drinking glass that breaks and strikes his neck, slashing an artery.
Lilly sobs convulsively as she picks his his money up off the floor as her son bleeds to death. Dressed in red dress and shoes, she flees the room, leaving her son to die, and descends in the hotel elevator to the parking lot. She gets into her son's anonymous Plymouth K-car car and drives off into the night.