Nichts ist, wie es scheint - das ist das Motto von 'Shanghai'. Schauplatz ist die alte chinesische Metropole 1941, eine Woche vor dem Angriff auf Pearl Harbor. Der amerikanische Geheimagent Paul Soames (John Cusack) ist gerade in Shanghai angekommen, um den Mord an seinem besten Freund aufzuklären. Prompt findet er sich in ein Netz von Verschwörung und Lügen verstrickt, welches die ganze Stadt überdeckt. Mit Hilfe der deutschen Diplomatengattin Leni Müller (Franka Potente) macht er die Bekanntschaft des gut vernetzten Gangsterbosses Anthony Lan-Ting (Chow Yun-Fat) und dessen schöner Frau Anna (Gong Li). Bei seinen Nachforschungen nimmt er beide ins Fadenkreuz, wird aber gleichzeitig von dem japanischen Geheimdienstoffizier Tanaka (Ken Watanabe) beschattet. Es dauert nicht lange, und Soames und Anna finden sich in einer Affäre wieder, die sie alles riskieren lässt. Aus nationalen Loyalitäten werden emotionale, und in einem Wettlauf gegen die Zeit versuchen Soames und Anna, den Mordfall zu lösen und aus dem besetzten China zu entkommen, bevor die Stadt untergeht...