1937年,在中國南京生活多年的德國商人拉貝(烏爾里奇·圖克爾 Ulrich Tukur 飾)與妻子多拉準備回國。他把在西門子中國分部擔任的職務交給繼承人,然而就在當天的歡送舞會上,日軍開始轟炸南京城,到處燒傷搶劫,引起南京暴亂。恐慌的居民四處逃散,拉貝毅然打開公司大門 收留中國員工及其他難民。南京城的外國傳教士、醫生、商人們商議在南京建立一個「南京國際安全區」來保障無辜百姓的安全,拉貝被推舉爲主席。本來第二天決定回國的拉貝決定要留下來,去拯救無辜的老百姓。當他目睹日本帝國主義的軍隊對南京人民施加的慘無人道的暴行時,拉貝更加積極地與同伴們和日軍鬥智鬥勇,試圖挽救更多的生命。越來越多的難民湧入安全區,這完全超出了他們的想像。與之同時,日軍的暴行更加瘋狂,拉貝的人道救助引起他們的不滿,安全區多次受到日軍的衝擊,補給變得越來越艱難。幾十萬的無辜百姓等待拉貝去拯救,巨大壓力下拉貝怎樣去完成這人性的使命?