Catherine (Fanny Ardant), gynécologue, découvre que son mari Bernard (Gérard Depardieu), homme d'affaires, l'a trompée. Celui-ci ne conteste pas les faits, mais affirme que ces passades sont ponctuelles et insignifiantes, et sans doute la conséquence de leur relation de couple qui s'est étiolée au fil des ans. Catherine n'est pas réellement en colère mais plutôt intriguée à l'idée que son mari puisse avoir des relations extra-conjugales. Sans lui en parler, elle engage une go-go danseuse (Emmanuelle Béart), prénommée Marlène, afin qu'elle séduise Bernard et lui rapporte ses réactions. Cette dernière accepte le rôle, et Catherine lui attribue le prénom Nathalie sous lequel Marlène devra agir. Les deux femmes se voient ainsi presque quotidiennement et Marlène, sur le ton de la confidence, raconte en détail chacun de ses rendez-vous avec Bernard, employant des mots très crus pour décrire leurs ébats sexuels, ce qui fascine Catherine et change inévitablement le regard qu'elle porte sur son époux chaque soir. D'autant que Bernard semble persister dans le mensonge. La relation ambiguë entre Catherine et Marlène / Nathalie se transforme peu à peu en amitié. À plusieurs reprises le contrat est rompu mais Catherine semble vouloir maintenir cette situation et retourne inexorablement vers la prostituée. C'est ainsi que lorsque Marlène est expulsée de son logement, Catherine lui loue un appartement afin qu'elle reste dans le quartier. Un jour Marlène avoue qu'elle a pris du plaisir avec Bernard. Catherine décide alors de tromper son mari. Mais lorsque Marlène lui annonce que Bernard veut vivre avec elle, cela va trop loin pour Catherine. Pour la première fois elle interroge Bernard explicitement, mais celui-ci se défend en jurant qu'il n'a aucune autre femme dans sa vie. Perplexe devant cette sincérité touchante, Catherine entraîne son mari dans le bistrot où elle rencontrait régulièrement Nathalie, et donne simultanément rendez-vous à cette dernière. Quand Marlène / Nathalie pénètre dans l'établissement et aperçoit le couple, elle quitte les lieux. Bernard ne connaît visiblement pas cette fille, et Catherine comprend alors la situation. Plus tard, Marlène avouera qu'elle a bien tout inventé : elle n'a jamais couché avec Bernard et ne l'a en fait aperçu qu'une seule fois, sans que celui-ci ne prête attention à elle. Catherine ne lui en veut pas de lui avoir menti et la serre tendrement dans ses bras.
La chanteuse et comédienne Vanessa Paradis avait été pressentie pour incarner le rôle de Nathalie. Cependant, elle dut y renoncer en raison de sa grossesse. C'est ainsi que le rôle échut à Emmanuelle Béart.
Tournage
Le film a été tourné à Paris et en région parisienne, notamment à la patinoire de Franconville.
Emmanuelle Béart interprète le rôle d'une prostituée pour la seconde fois, après J'embrasse pas, réalisé par André Téchiné en 1991.
C'est la troisième fois que Fanny Ardant et Gérard Depardieu interprètent un couple au cinéma, après La Femme d'à côté en 1981 et Le Colonel Chabert en 1994.
Le rôle de l’homme d’un soir est tenu par Ari Boulogne, fils présumé d'Alain Delon, qui apparaît au générique sous le nom d’Ari Paffgen.
Le scénario initial, sous le titre de Nathalie Ribout, est de Philippe Blasband. Ce dernier l'a ensuite adapté en pièce et publié en 2003, aux éditions Actes-Sud Papier, dans le même volume qu'Une liaison pornographique[1]. La pièce est jouée début 2009 à Paris, avec Virginie Efira et Maruschka Detmers dans les rôles tenus au cinéma par Emmanuelle Béart et Fanny Ardant, au théâtre Marigny. À noter que la pièce et le film sont deux variations différentes sur l'idée de départ (dans la pièce, contrairement au film, le couple est séparé et en instance de divorce).
Le réalisateur canadien Atom Egoyan s'est inspiré du scénario pour en faire sa propre adaptation, le remake Chloé (2009).
Nominations
Nomination au prix de la meilleure actrice pour Fanny Ardant et Emmanuelle Béart, lors des Prix du cinéma européen 2004.