Max (Clive Owen) is a promiscuous gay man living in 1930s Berlin. He is at odds with his wealthy family because of his homosexuality. One evening, much to the resentment of his boyfriend, Rudy (Brian Webber II), Max brings home a handsome Sturmabteilung (SA) man (Nikolaj Coster-Waldau). Unfortunately, he does so on the Night of the Long Knives, when Hitler ordered the assassination of upper echelon SA corps. The Sturmabteilung man is discovered and killed by SS men in Max and Rudy’s apartment, and the two have to flee Berlin.
Max’s Uncle Freddie (Ian McKellen) has organised new papers for Max, but Max refuses to leave his boyfriend behind. As a result, Max and Rudy are found and arrested by the Gestapo and put on a train headed for Dachau. On the train, Rudy is brutally beaten to death by the guards. As Rudy calls out to Max when he is taken away, Max lies to the guards, denying he is gay. In the camp, Max falls in love with Horst (Lothaire Bluteau), who shows him the dignity that lies in acknowledging one’s beliefs. After Horst’s death, Max finds the courage to be true to himself, and takes his own life.