Akcja rozgrywa się w rozwiązłej atmosferze Szanghaju lat 30. ubiegłego stulecia. Zbliża się wojna domowa i wkroczenie armii japońskiej. Todd Jackson to amerykański dyplomata, w rolę którego wcielił się Ralph Fiennes. Sofia Belinskaya zagrana przez Natashę Richardson to arystokratka, uciekinierka z Rosji, z trudem zarabiająca na życie jako tancerka a czasami nawet prostytutka.
Jackson, z pomocą swego tajemniczego japońskiego przyjaciela , szpiega Matsudy (Hiroyuki Sanada) otwiera odnoszący sukces nocny klub, w którym gwiazdą jest właśnie hrabina Sofia.