1937年11月日军进攻南京时,他力主死守,主动出任首都卫戍司令长官。作为中方南京保卫战的防禦戰最高指挥官,但是已离开指挥一线部队多年,且对防守南京的国军部队也不熟悉,他声称要与首都共存亡,下令封锁南京通往江北的线路,实是让中央政府公务员及公文优先撤退,以致后来南京部份难民在江面路面皆被阻塞,遭日军追擊不幸遇害。
《德式現代砲兵須知》訓練總監部軍用圖書審查證
12月11日上午唐生智接到上级第三战区副司令长官顾祝同的急电传达委员长要南京守军撤退的命令,当晚又接连收到两份蒋中正亲自发来的内容为撤退的电报,加上战斗形势急转直下,12日下午5点唐生智发布撤退命令。书面撤退令安排除司令部直属部队和第36师渡江撤退外,其余部队从正面突围。随后又做了口头的补充命令,允许其他部队在有轮渡时撤退渡江,向江北一带集结。而严格遵守安排从正面突围的部队只有两支,大约2.6万人。其余部队全部冲挤向挹江门渡江,大约10万人。造成了撤退的混乱场面,损失惨重。唐生智在南京脱险后到武汉向蒋中正谢罪。台湾国史馆提供的1937年12月24日南京卫戍司令长官唐生智向蒋中正呈送的一份战报上说:“窃职等奉令卫戍南京,既不能为持久之守备,又不克为从容之撤退,以致失我首都,丧我士卒,比以待罪之身来鄂晋谒,反承温慰,并觉惶悚。”虽然蒋中正没有处置唐生智,但之后再也没有重用过他。