由于日军已经占领了制高点雨花台可以俯射南京城内的国军,国军处于极为不利的态势。日军与国军第74军展开反复争夺,直到到下午5点,水西门内外的民房都被日军的炮火打烂。到处起火,阵地岌岌可危。12点20分日军第6师团47联队的第1大队第3中队长三明保真大尉带领部队冲进了中华门。安东军曹把一面日章旗挂在了中华门上。随后太平门也被日军突破了,守军第83军第153师师长姚中英阵亡。
下午4点,唐生智口头向大家宣布撤退,但是唐生智却没有任何具体详细的撤退计划,其基本精神就是各自自己找出路。只规定了他自己带来司令部人员从下关撤退。当宪兵司令部副司令萧山令将军指挥宪兵教导团赶到江边却发现自己的船一艘也没有。日军舰艇倒是来了。最后萧山令将军和几百名宪兵在日军两面夹击的炮火下全部阵亡,只12人在紫金山被俘。而在前边打头阵突围的第112师副师长李兰池也在战斗中中弹阵亡。日军继续前进,街头巷战仍在继续,比如日军的1只独立机关枪队遇到一所被国军占据为火力点的房子。日军步兵大队所属的70mm步兵炮第一发炮弹打到了房子的后面,第2发穿进了房顶在房屋里爆炸,第3发炮弹在窗户里爆炸,房子里的国军冲出房子,正被堵在房门前的日军机枪侯着,跑出来的国军都被打倒在地。仅仅3发炮弹,国军的火力点就被消灭了。
本来南京国军司令唐生智在战前为了表示破釜沉舟的决心,并没有控制船只。但是唐生智突然在12月12日下令阵前撤退,从后面的结果来看,其所制订的撤退计划毫无可行性可言,并且根本就没有安排撤退船只,并且在撤退安排上带有很大的随机性,甚至也没有人通知担任督战任务的第36师。结果第36师为了阻止国军各部队撤退,双方还发生了交火。马嘶人喊,人员嘈杂,伤兵勉强拄着棍子也跟在后面。码头上的人如同热锅上的蚂蚁,就是没有船。幸亏第74军司令俞济时有路子找了1艘小火轮1次可以装300多人,经过12日1夜的忙活拉走 了第74军的5000多人(后又有2000人归队),第88师第264旅的辎重营在下关控制着一批木船把第88师抢运出去2000多人,教导总队突围 4000人,第36师突围3000-4000人。南京大屠杀60年祭专辑给出的国军突围撤退的数字是32144人。
需要指出的是部分国军将领的提前逃跑更加重了撤退的混乱。如第71军军长王敬久、该军第87师师长沈发藻等根本未回指挥所;教导总队队长桂永清回到富贵山地下室指挥所后告知幕僚撤退任务,即留参谋长邱清泉处理文件等,自己单独先去下关等等诸如此类的人还有很多。方圆几十里的南京城已经被五路日军围个水泄不通,沟沟坎坎到处埋伏着日军机枪的交叉火力网,别说是一支大部队,就是一只兔子也难以逃脱日军的火力封锁线。只有南京城北面没有日军,可是却有一条汹涌的长江断绝了归路。没有桥梁、没有船只,只有滚滚的江水奔腾而去,无数散兵,难民一片混乱,大家的心理已经完全崩溃,惊嚎不绝,纷纷趴着木头盆,门窗,木棍子等等一切的东西想要飘过滚滚长江。
很快,日军第16师团的先头部队第30旅团第33联队冲到下关,和江面上的日本海军第3舰队第11战队的5艘炮舰,4艘驱逐舰,4艘海巡艇一起两面射击,射杀拥挤在下关和江面上的军民。日军在下关等地俘虏了很多国军,按日军记载这些俘虏“有十二三岁的小兵,也有四十岁左右的老兵,服装形形色色,不禁让人怀疑,这些人是军人吗?”。里面那些青壮年士兵有的是南京城里卖茶碗的小贩被抓壮丁,有的是流浪汉被抓壮丁。第2天,12月14日,日军首先屠杀了4200名无法行动的国军伤兵,随后是屠杀俘虏和以抓逃兵为由到处抓捕男性,南京大屠杀开始了。