Act 1 50 year-old business man Lopold (Bernard Giraudeau) arrives home with 20-year old Franz (Malik Zidi), whom he has just met. Franz is not quite sure why he agreed to come home with Lopold as he is supposed to be meeting his fiance Anna, but he accepts drinks from Lopold and they begin to get to know each other. Franz tells Lopold that he is not sure whether or not he loves Anna, that he does not really enjoy sex with her, finding more pleasure in books, theatre and life in general. Lopold asks him if he has ever slept with a man. Franz says he has not, but describes a dream where a man comes into his bedroom in an overcoat and has sex with him. Lopold says that although he once lived with a woman for seven years, he has always found sex with men more exciting. They kiss, and Lopold tells Franz to get undressed and into bed. He then appears beside the bed in an overcoat ready to re-enact Franz's dream.  Act 2 Six months later, Franz is living happily with Lopold. He stays at home while Lopold goes on business trips. When Lopold returns, Franz tends to his every need and has become very passive. Lopold has become very domineering. The two men spend a great deal of time arguing and Franz worries about Lopold leaving him, but they still have a satisfying physical relationship. One night, a melancholy Lopold confesses that he believes he has driven one of his customers to commit suicide. Franz, unsure how to comfort Lopold, seduces him, and they perform the role-play from their first night together, this time with roles reversed.  Act 3 Franz and Lopold are still enjoying sex together but the animosity between them is growing. Franz threatens to leave, but does not go through with it. When Lopold is away on business, Franz is bored and depressed. He finds a gun and imagines shooting himself. One day his ex-fiance Anna (Ludivine Sagnier) visits. She sees how unhappy he is and tells him that she still loves him and wants to be with him. They kiss, and Franz acts out the "man in overcoat" sequence with her.  Act 4 Franz and Anna have been sleeping together in Lopold's apartment for two days. She has convinced him to leave and happily talks about the children they will have together. Although he still loves Lopold, Franz agrees that he should leave. Lopold returns from work early and finds them packing. When Anna tells him that Franz is leaving, Lopold just laughs and tells Franz to get them some coffee. Lopold's ex-girlfriend Vra (Anna Levine) arrives and Lopold introduces her, explaining that she is a male-to-female transsexual. Vra is still in love with Lopold. He then tells them that Vra used to like being tied up, and that Franz likes it too. Franz, angry at being humiliated by the older man, says they are leaving, but Anna wants to stay. Lopold wants them all to have fun together. Lopold starts ordering the two women about. They are excited and start getting him whatever he wants. Franz is disgusted. Lopold tells him that although he does not need Franz, Franz needs him. When Lopold and the women go to the bedroom. Franz goes to join them but changes his mind. He fantasises about murdering Lopold. In the bedroom, Vra realises that the others do not need her and leaves them to it. She finds Franz lying on the floor crying. She tells him that she is Lopold's "creature", that after he stopped desiring her, she had a sex change operation for him. This worked for a while but Lopold eventually left Vra. Franz tells her that she is still beautiful and despite the fact that they both love Lopold, she suggests that they get together. Franz tells her that it is too late. He has taken some poison and is dying. He says that he is Lopold's creature too. Franz dies. When Vra tells Lopold, he seems unconcerned. Anna is shocked and upset to lose the father of her future children, but when Lopold tells her to get back into bed, she does. Lopold asks Vra to join them in bed, telling her that although he does not need her, she needs him.