1937年7月,盧溝橋事變後,抗日戰爭全面爆發。日軍隨即主動進攻上海,發其淞滬會戰。經過三個月的拉鋸,日軍於至11月12日佔領上海,並直撲南京。
南京是當時的首都,守住南京對民國政府意義重大。但從戰術上說,當時的李宗仁、白崇禧等人認為南京無險可守,難以守住。但不管能不能守住,拱手把南京讓給日本人,蔣介石還幹不出來。
戰前會議上,蔣介石問眾將意見。李宗仁、白崇禧主張放棄。軍事委員會警衛執行部主任唐生智拍案而起,大聲疾呼:「現在敵人已迫近首都。首都是國父陵寢所在地,值此大敵當前,南京如不犧牲一、二員大將,我們不僅對不起總理在天之靈,更對不起我們的最高統帥。本人主張死守南京,和敵人拼到底!」
唐生智的豪言壯語使蔣介石大喜過望,他當即任唐生智為南京城防司令,全權負責南京防務,然後自己撤到了後方。
唐生智慨然接受任命,唐生智向蔣介石保證:「沒有統帥命令決不撤退,誓與南京共存亡」。在此之前,唐生智還有個頭銜,就是「佛教將軍」。因為1926年1月時,唐生智曾命令所部全體官兵四萬餘人,集體摩頂受戒,成為佛教徒,部隊佩戴「大慈大悲救人救世」胸章,此事古今罕見,轟動一時。
唐生智接手南京防務後,所轄部隊十一個師加教導總隊共十一萬人。為了向全體守衛南京的官兵表決心,唐生智下令收繳並毀了所有船隻,當然他和軍官們偷偷給自己留了渡江逃命的快艇。
1937年11月25日,日軍分三路向南京進逼,12月5日雙方接陣,至9日戰況愈發激烈,日軍大將松井石根勸唐生智勸告交出南京,唐生智堅決拒絕。10日,日軍開始對南京發動總攻。
唐生智拒絕投降說明他尚有民族氣節,在日軍攻城初期,唐生智也很英勇,他冒敵機轟炸來到前線,指揮守軍戰鬥,堅持不進地下室。11日中日雙方全線展開激戰,中方軍隊死傷慘重。到11日晚上,蔣介石擔心全軍覆沒,便命令唐生智乘機撤退。
蔣介石的本意是南京無險可守,抵抗一下給國民有個交代即可,不宜與優勢日軍消耗,應保留實力。但唐生智早將渡江船隻銷毀,成建制大規模撤軍已經不可能。
更關鍵的一點是,唐生智貪生怕死,不願與將士們共存亡,所以發生了後來令人氣憤的一幕。唐生智明明接到撤退命令,卻不下達。城外部隊不知撤退的事,一直苦戰。當時李彌率部死守雨花臺、中華門,失守後退,碰到宋希濂。宋希濂卻說唐生智有死命令,後退者殺無赦。李彌無奈,又率部殺回去。
12日晚唐生智開完撤退會議,不少軍官直接就帶著金銀細軟渡江逃走了,根本不通知自己所屬的部隊。唐生智自然不用說,也乘上早準備好的快艇渡江北逃。
至於那些在城外和日本侵略者苦戰的部隊,一直到13日中午也沒有接到撤退的命令,後來有人發現城牆沒有人防守了,他們才知道頭頭們早跑了。
國民黨王敬久、宋希濂等高級軍官逃跑時,不但不通知城外部隊,甚至下令關閉城門,逃過江後,他們由於害怕日軍追擊,還下令燒毀船隻,根本不管所部將士死活。正是由於這些國民黨軍官的不負責任,導致了十幾萬守軍將士士氣瞬間土崩瓦解,紛紛逃亡。
當時,多數潰退士兵都往下關跑,因為他們聽說下關有軍官們偷偷保留的船隻!可是下關的36師卻不放軍隊通過,甚至發生了內部槍戰。還有很多撤退的國軍士兵無船渡江,只得冬泳渡江,溺死者不計其數。那些不會遊泳的只好脫掉軍裝混入百姓隊伍,後來多也不免遭到日軍屠戮。
而唐生智呢,他渡江逃跑後,舒舒服服乘車抵達滁州,後轉到漢口見了蔣介石,僅僅引咎辭職,卻沒有受到任何懲罰。