In April 1946, Alicia Huberman (Ingrid Bergman), the American daughter of a convicted Nazi spy, is recruited by government agent T. R. Devlin (Cary Grant) to infiltrate an organization of Nazis who have moved to Brazil after World War II. When Alicia refuses to help the police, Devlin plays recordings of her fighting with her father and insisting that she loves America.
While awaiting the details of her assignment in Rio de Janeiro, Alicia and Devlin fall in love, though his feelings are complicated by his knowledge of her promiscuous past. When Devlin gets instructions to persuade her to seduce Alex Sebastian (Claude Rains), one of her father's friends and a leading member of the group, Devlin fails to convince his superiors that Alicia is not fit for the job. Devlin is also informed that Sebastian once was in love with Alicia. Devlin puts up a stoic front when he informs Alicia about the mission. Alicia concludes that he was merely pretending to love her as part of his job.
Devlin contrives to have Alicia meet Sebastian at a horse riding club. He recognizes her and invites her to dinner where he says that he always knew they would be reunited. Sebastian quickly invites Alicia to dinner the following night at his home, where he will host a few business acquaintances. Devlin and Captain Paul Prescott of the US Secret Service (Louis Calhern) tell Alicia to memorize the names and nationalities of everyone there. At dinner, Alicia notices that a guest becomes agitated at the sight of certain wine bottles, and is ushered quickly from the room. When the gentlemen are alone at the end of the dinner, this guest apologizes and tries to go home, but another of the Nazi group insists on driving him (to his death).
Soon Alicia reports to Devlin, "You can add Sebastian's name to my list of playmates." When Sebastian proposes, Alicia informs Devlin; he coldly tells her to do whatever she wants. Deeply disappointed, she marries Sebastian.
After she returns from her honeymoon, Alicia is able to tell Devlin that the key ring her husband gave her lacks the key to the wine cellar. That, and the bottle episode at the dinner, lead Devlin to urge Alicia to hold a grand party so he can investigate. Alicia secretly steals the key from Sebastian's ring, and Devlin and Alicia search the cellar. Devlin accidentally breaks a bottle; inside is black sand (later proven to be uranium ore). Devlin takes a sample, cleans up, and locks the door as Sebastian comes down for more champagne. Alicia and Devlin kiss to cover their tracks. Devlin makes an exit. Sebastian realizes that the cellar key is missing – yet overnight it is returned to his key ring. When he returns to the cellar, he finds the glass and sand from the broken bottle.
Now Sebastian has a problem: he must silence Alicia, but cannot expose her without revealing his own blunder to his fellow Nazis, who he knows would kill him for it. Sebastian discusses the situation with his mother (Leopoldine Konstantin) and she suggests that Alicia "die slowly" by poisoning. They poison her coffee and she quickly falls ill. During a visit from Sebastian's friend Dr. Anderson, Alicia realizes both where the uranium has been mined and what is causing her sickness (Sebastian and his mother prevent Dr. Anderson from drinking from Alicia's cup). Alicia collapses and is taken to her room, where the telephone has been removed and she is too weak to leave.
Devlin is alarmed when she fails to appear at their next rendezvous, and attempts to make a social visit. He sneaks into Alicia's quarters, where she tells him that Sebastian and his mother poisoned her. After confessing his love for her, Devlin carries her out of the mansion in full view of Sebastian's Nazi cabal. Sebastian goes along with Devlin's story that Alicia must go to the hospital. Outside, Sebastian begs to go with them, knowing that the Nazis suspect the truth, but Devlin and Alicia drive away, leaving Sebastian to face his erstwhile friends.