此时,中原地区的农民起义已重新走向高潮。崇祯十二年(1639)五月,接受招抚的张献忠、罗汝才重举义旗,攻占湖广的谷城和房县,于七月间击败赶去镇压的官军。明思宗杀了主持抚局的总理军务熊文灿,命杨嗣昌出任督师,领兵围剿。张献忠西入四川,以走致敌,再于崇祯十四年正月率部东下,进入湖广,于二月间攻克襄阳,诛杀襄王朱翊铭,迫使杨嗣昌自杀身亡,然后转攻河南。躲入深山密林的李自成也于崇祯十三年(1640)六七月间由郧、均进入河南,在翌年正月攻占洛阳,诛杀福王朱常洵,然后乘胜围攻开封。面对这种局势,陈新甲坐立不安,他深知明思宗一向急功近利而又专横残暴,臣僚有功即予奖赏,稍有失误便严加惩处,“败一方即戮一将,隳一城即杀一吏” ,如果辽西之战事不能尽快结束,明军就无法腾出手来,全力镇压农民起义,起义的烈火越烧越旺,自己作为兵部尚书便难辞其咎。因此,张若麒前往宁远与洪承畴商议对策不到一个月,他度日如年,并由对辽西形势的悲观态度逐渐滋生出急躁冒进的情绪,未等张若麒带回与洪承畴的商议结果,即于六月十一日向明思宗提出四道进攻速战速决的方案。

    明思宗对陈新甲的作战方案没有立即表态,而是交给洪承畴的行营讨论。洪承畴表示坚决反对,说自己“虽总八镇兵,仅白广恩、马科、吴三桂敢战,余可合力。若分三将于三路,虑众寡不敌;若五将助之,谁为军锋?兵分势弱”,难以取胜。当时,祖大寿也派人传话,谓“宜在营逼之,毋轻战”。洪承畴乃上书朝廷,坚持自己且战且守的主张,表示要凭借松山、杏山转运粮草,做持久战的准备。况且,锦州守御坚固,清兵一时不易撼动,过了今秋,不但清兵势穷,就是朝鲜也将势穷,到时再同他们展开决战,这就是可守然后可战之策。“今本兵(兵部尚书)议战,安敢迁延?但恐转输为艰,鞭长莫及。国体攸关,不若稍等,使彼自困之为得也。” 明思宗觉得他的分析很有道理,表示同意。

    但是,陈新甲仍然坚持己见。张若麒又同他一唱一和。此人素狂躁,“见小胜,谓围可立解”,也密疏支持陈新甲的主张,并毛遂自荐,自求留在关外赞画军务。七月,清兵因粮饷不足,扬言入攻三协以虚张声势。京师的明朝君臣最怕清兵从三协乘虚而入,威胁京师。陈新甲又以此为借口,写信威胁洪承畴:“台台出关,用师年余,费饷数十万,而锦围未解,内地又困。斯时(即清兵入犯三协之时)台台不出山海,则三协虚单;若往辽西,则宝山空返,何以副圣明而谢朝中文武诸人之望乎?” 与此同时,陈新甲还向明思宗反复密陈速战速决与守而兼战的利弊,并推荐前任绥德知县马绍愉为兵部职方司主事,出关赞画军务,以贯彻兵部的主张。在陈新甲、张若麒的再三鼓动之下,明思宗的态度发生大转变,遂下密敕,要求洪承畴“刻期进兵” ,这就埋下了日后明军惨败的祸根。

    君命难违,七月二十六日,洪承畴只得在宁远誓师援锦。二十八日,下令进兵,将粮草留存在宁远、杏山与塔山西北的笔架山(在今辽宁凌海市西南海中),自统6万大军出发,令余军继后,至松山集结。二月十九日,他率部抵达松山,抢占乳峰山西侧后,环松山扎营;步兵驻扎于乳峰山与松山之间,列七大营;骑兵驻扎于东、西、北三面。洪承畴还传令镇兵分别进击东西石门,以分割清兵,使其腹背受敌,并立车营,四周树木栅成城;由于所带粮草有限,决定同清兵展开一场决战,速战速决,以定胜负。部署既定,即于八月初二日向清兵发起攻击,祖大寿也从锦州城内杀出。此战共击杀清兵130人,击毙清将固山、牛录等20多人。但祖大寿冲出二重围后,至第三道重围被清兵挡回。宣府总兵杨国柱阵亡,由山西总兵李辅明代领其部。此后,连日作战,双方互有胜负。至初十日一战,明军大获胜利,“建虏自是不复出” 。此时清兵前线的统帅是六月间替代济尔哈朗的睿郡王多尔衮,他急忙派人驰赴沈阳求援,要求改变原先的半数兵力迎战,半数兵力在家休整的做法,全军出战。皇太极急得“忧愤呕血”,只得按其要求“悉索沈中人丁” ,倾国出动,使参战的兵力在总数上超过明军 ,并带病亲临松山督战。明军顽强抗击,二十一日一战曾“搴其大旗三” ,斩获敌兵首级数十颗,使皇太极大惊失色,一度准备退兵。

    但是,明军的暂时胜利,并不能从根本上改变明廷的错误决策所带来的被动地位,而洪承畴临战指挥上的某些失误,又为清兵提供了可乘之机。洪承畴在被迫执行速战速决之策,合兵挺进松山之时,将13万大军集中在松山与乳峰山的狭小地带,“有前权而无后守” ,“首尾全无顾应” ,忽略了与后方杏山、塔山的联络。在皇太极亲赴松山督战之前,大同监军张斗曾建议:“宜驻一军于长岭山,防其抄我后。”洪承畴没有采纳,反说:“我十二年老督师,若书生何知!” 长岭山自塔山迤逦至锦州,延松山城之右,战略地位十分重要。皇太极一到松山,立即抢占长岭山这个战略要地,然后抓住明军缺粮而又不擅野战的弱点,采取围点打援的战术,将主力推进到塔山、松山之间,不仅夺去明军在笔架山的成堆积粟,而且掘壕设障,切断了明军与后方的一切联系和粮饷供应。当时明军锐气尚存,有的部将“请以精锐决战,而出奇夹击,分兵袭南山,可以得志。否且退保杏山,杏山去松仅一舍,徐图制胜,彼必走” 。这不失为绝处逢生之计,但洪承畴亦未予理睬。

    八月二十一日晚,皇太极估计松山的明军由于缺粮可能突围南逃,将左翼清兵调至右翼,与右翼清兵比翼列阵,直抵海边,并命诸将分守杏山、塔山、小凌河口诸险要处,设伏以待。洪承畴见松山被围,城中粮储已不够食用三天,决定拼死一战。诸将议论纷纷,主张回宁远就食。一向主张速战的张若麒也致信洪承畴,支持这一主张,军心顿时涣散。洪承畴只得令曹变蛟、王廷臣率两镇兵马坚守松山,其余六总兵分左右两路突围。胆怯的大同总兵王朴,在初更时分率先逃跑,吴三桂、唐通、马科、白广恩、李辅明也各率兵马沿海岸而逃。结果,步骑兵互相践踏,不战自乱,弓箭、盔甲丢得遍地都是,又遭到清兵的伏击,损失惨重。吴三桂、王朴、白广恩、唐通、马科率部分残兵先后溃入杏山。李辅明逃至宁远,不几天,王朴、吴三桂也奔至宁远。张若麒、马绍愉得一渔船,与诸监军逃回宁远,“奏承畴失计” 。洪承畴急令曹变蛟、王廷臣从乳峰山西侧撤入松山城内,命三分之二军士冲围决阵,途中遭到清兵的阻击,移屯海岸又被正在涨潮的海水淹没,仅200余人脱险生还。这样,就只剩下总督洪承畴,总兵曹变蛟、王廷臣,巡抚丘民仰以及1万名残兵固守松山城。洪承畴派人东走小凌河,绕道漠南蒙古,向朝廷“请兵解救” 。皇太极对松山采取围而不攻之策,一面等待城中弹尽粮绝之后不攻自破,一面加紧招抚活动,期望明军将士不战自降。

    明思宗得知数万大军溃于一旦,洪承畴与曹变蛟、王廷臣、丘民仰困守松山的消息,极为震惊与忧虑,询问兵部尚书陈新甲有何良谋善策。陈新甲避罪犹恐不及,哪里还能提出什么良谋善策。九月初二,明思宗下达圣谕,令洪承畴“极力死守”;同时,命调刘应国水师8000人,扬帆松山、杏山海口,或乘夜偷渡松山,“以壮声援”,并责成吴三桂、白广恩、李辅明收拾残兵,联络杏山、塔山,“以图再进” 。圣谕下达后,根本无人行动,“未发一兵,未通一信” 。任凭明思宗怎样催促,也无济于事。

    被困在松山城中的洪承畴,曾几次组织突围,但均告失败。内无粮草,外无救兵,他只能紧闭城门,准备与城共存亡。崇祯十五年(崇德七年,1642)二月,松山副将夏承德眼看突围无望,暗中投降了清兵,派其子赴清营作为人质,约定于十八日夜配合清兵攻城。次日黎明,夏承德率部捉拿洪承畴及诸将领,献给清兵。清兵毫不费力地占领了松山。

    已经返回沈阳的皇太极得到消息,下令将洪承畴及祖大寿之弟祖大乐解往沈阳,其余拒绝投降的丘民仰、曹变蛟、王廷臣及其部属200多人,连同所部3000余人全部处斩,只有夏承德的部下及家属获免。松山城则被夷为平地。接着,清兵利用祖大乐招降锦州守将祖大寿,再挟连胜之余勇,于当年四月用西洋大炮攻破塔山,城内官属兵丁7000人悉数被杀,接着迫降杏山,将其夷为平地。历时两年的松锦战役,宣告结束。明军此战的失败,不仅精锐的边兵丧失殆尽,而且丢失宁远以北的大片土地,从而大大加速其覆亡的进程;清兵此战的胜利,得到宁远以北的大片土地,进一步逼近山海关,从而为其入关夺取全国的最高统治权奠定了基础。

    作为明廷重臣、蓟辽总督的洪承畴,在松山被俘并押解沈阳后,曾绝食七日而求死不得,后经皇太极和一些降清汉官的劝说,于崇祯十五年(崇德七年,1642)五月四日同意剃发,正式降清。但是,由于战局混乱,消息不灵,明廷上下都认为洪承畴已经“殉节”。兵部报告战况的文书塘报说,据从锦州逃出的人讲,清兵把洪承畴押往锦州城北无极王营盘内杀死,“洪总督临砍时,只求速死”。从乱军中逃回北京的洪承畴家人,向朝廷报告时,也肯定洪承畴已经“殉难” 。明思宗因此认定洪承畴“节烈弥笃” ,痛哭流涕地说“我不曾救得承畴” ,下令在朝天宫前设置祭坛,以极高的规格祭悼洪承畴等阵亡将士,寻又命在城外建造祠堂,用以祭悼洪承畴与丘民仰,从而演出了一幕将活人当作烈士祭奠的闹剧。