Sir Wilfred Robarts (Charles Laughton), a master barrister in ill health, takes Leonard Vole (Tyrone Power) on as a client, over the protestations of his private nurse, Miss Plimsoll (Elsa Lanchester), that the doctor had told him to stay away from criminal cases. Vole is accused of murdering Mrs. French (Norma Varden), a rich, older woman who had become enamored of him, going so far as to make him the main beneficiary of her will. Strong circumstantial evidence all points to Vole as the killer.
When Sir Wilfred speaks with Vole's German wife Christine (Marlene Dietrich), he finds her rather cold and self-possessed, but she does provide an alibi. Therefore, he is greatly surprised when she is called as a witness for the prosecution. While a wife cannot testify against her husband, it is shown that Christine was in fact still married to another man when she wed Leonard. She testifies that Leonard admitted to her that he had killed Mrs. French, and that her conscience forced her to finally tell the truth.
During the trial (in the Old Bailey, carefully recreated by Alexandre Trauner), Sir Wilfred is contacted by a mysterious woman, who (for a fee) provides him with letters written by Christine to a mysterious lover named Max. This correspondence gives her such a strong motive to lie that the jury finds Leonard not guilty.
However, Sir Wilfred is troubled by the verdict. His instincts tell him that it was too tidy, too neat. And so it proves. By chance, he and Christine are left alone in the courtroom. She takes the opportunity to take credit for the whole thing. When she heard him say at the beginning that a wife's testimony would not be convincing, she decided to set it up so that hers would be for the prosecution and then be discredited. An ex-actress, she had played the part of the mystery woman so well that Sir Wilfred did not recognize her when he negotiated for the letters. She knew that Leonard was guilty; her testimony was the truth. Her letters are a fraud — Max never existed. When asked why she did it, she confesses that she loves Leonard.
Leonard appears and, now protected by double jeopardy, nonchalantly confirms what Christine had said. A young woman (Ruta Lee) then rushes into his arms. When he admits that they are going away together, Christine kills him with a knife in a fit of fury. Sir Wilfred remarks that Christine did not murder Leonard, but that she "executed him". Miss Plimsoll then cancels Sir Wilfred's holiday, realizing that he cannot resist taking charge of Christine's defense.