Socialite Kitty (Naomi Watts), marries a smitten Walter (Edward Norton), an infectious disease specialist, in order to escape her family and they soon travel to Shanghai for his work. Their marriage is awkward and Kitty mistakes Walter's withdrawn nature for disinterest or lack of passion and begins an affair with a married man, Charlie (Liev Schreiber).
Walter confronts her; telling her he will publicly divorce her for adultery if she does not accompany him to a remote village in China where a cholera epidemic has just broken out. He relents enough to offer that if Charlie is willing to divorce his own wife and marry Kitty, he will allow her to divorce him and save the scandal. Charlie disappoints her, and she leaves with Walter.
They arrive amidst a nationalist uprising - being British is almost as much of a danger as the cholera. Walter works with and against the local doctors and government officials to try and root out the contanaments in the village, but his work stirs the anti-foreigner sentiments and things are dangerous for the two of them. In such a stark, though beautiful, setting they finally begin to get to know eachother and love kindles for the first time in Kitty while it rekindles in Walter. Kitty realizes she is pregnant, and does not know which is the father. Walter tells her it doesn't matter.
That day hundreds of refugees from other, contaminated, villages arrive to find help; bringing with them the infection. Villagers and the army clash with the refugees, but in the end they get in anyway. Walter leaves to go visit the towns they came from, but he becomes ill. Kitty rushes to be by his side, but they have run out of medical supplies and he dies shortly after they ask each other's forgiveness.
Kitty buries Walter and returns to England to raise their child. She meets Charlie many years later on the street and when he suggests they meet up, she dismisses him and walks off with her son, named Walter.