医生刘文(梁朝伟 饰)表面是个玩世不恭的人,但他实际非常细腻、洞悉世情的人。他厌恶不公的医疗制度,决定到红灯区经营诊所。醉心医学的他医术高强,面对贫苦大众好施医德。在他的病人当中有英勇的警员(刘青云 饰)、风月女子等等。他除了医治病人身体上的伤痛,还乐于倾听这群草根的心声,成为了他们的好友。但他却被昔日的好友陷害,刘文面临被吊销医生执照的危机。
1937年春,华中日本占领区的福王镇,驻守着一小队日军,名义上控制百姓,实则严守着一个秘密的地下军备库——103号仓的安全,以等侯大部队的军火接应。共军得知该敌情后,派出一名情报员潜入福王镇日军内部探取103号仓讯息。
台湾老兵刘燕生(凌峰 饰)到上海,寻找自己失散几十年的妻子乔玉娥(卢燕 饰)和从没见过面的儿子。乔玉娥当年和刘燕生失散三年后,和陆善民(徐才根 饰)组成家庭并生有两个女儿。刘燕生了解到乔玉娥和丈夫情感不好,就希望能带乔玉娥和他一起到台湾生活,并承诺拿出自己一生的积蓄,来补偿乔玉娥的丈夫和这个家庭的子女。但立刻引发这个家庭的剧烈震荡,激烈的争吵使几十年的亲人团聚变成了彼此的再次伤害,直到陆善民脑溢血生命垂危…… 乔玉娥无法抗拒分离的命运再次降临,只好在几十年前相同的上海码头,再次送走自己深爱的刘燕生……