大明帝國難吞的苦酒 山海關大戰
一、天下第一關
「兩京鎖鑰無雙地,萬里長城第一關」。
山海關,故稱榆關,據說是秦時蒙括北防匈奴,「植榆為塞」,所以邊塞多榆木,榆關之名便得於此。明代曹代蕭有詩曰:
榆關十月馬毛僵,手挽雕弓射白狼。
一陣雪花飄玉屑,西風猶趁馬蹄忙。
描述了山海關秋末冬初的景象。但古榆關並不完全就是後來的山海關。古榆關在今撫寧附近,四周土地空曠,無險可據,明初徐達北伐殘元勢力,率軍來到此處,見其東八十里處「枕山襟海,實遼薊咽喉」,非常險要,便把關城移到那裡,成為萬里長城東段的一個重要關口,由於它倚山臨海,所以人們新稱它為山海關。
山海關確實是軍事上的戰略要塞,用明朝人的話說:「山海關外控遼陽,內護畿輔,防扼海泊倭番,驗放高麗,女真進貢諸夷,蓋東北重鎮。譬人之身,京師則腹心也,薊鎮責有背也,遼陽則臂指也,山海關則節竅?卻是最緊要者也。」因此,明朝統治者對其防務十分重視,關城東北,墩台守望,鱗次櫛比;柳柵沙溝,縱橫路旁。特別是關城修得十分堅固,呈*****形,周圍八里多,牆高數丈。且四門之上皆有城樓,透過箭窗,北望長城,蜿蜒曲折,十分雄偉;東觀大海,可見巨浪「搖落千層花噴雪,怒號萬里勢奔雷」,極為壯觀。明朝後期,努爾哈赤起兵反明,遼東吃緊,幾次大軍出征皆由此通過,「兵役繁興,商賈輻湊,五方雜處」,彷彿成了一個都會。對於這樣一個重要衝塞得地理意義,清統治者是不會不清楚的。
早在天聰年間,皇太極降朝鮮,撫蒙古,免除了後顧之憂,又打下了大凌河,準備進一步圍困松錦。特別是天聰三年皇太極親率大軍破邊牆進圍北京,大舉攻明便已在日程之上。這時,便有許多議官建議攻打山海關,取得進一步向關內攻打的通道。天聰六年張弘謨就曾建議「直抵關門,再遣精騎由口外趁虛闖入,內外夾攻山海關,則關外各城可傳檄定,東西道通」。寧萬我更請「急圖山海」,認為「寧錦八成,攻取為難;山海一區,圖謀較易」,取得山海,可內外夾攻錦州等關外城池,又可進窺畿輔、北京,實在是一舉兩得之策。更有馬光遠告誡:「……越山海而不攻……是明損聲勢,暗失機會」。在這種情況下,決策人皇太極卻偏偏不採納這些建議。有人精闢地分析說,這一是因為皇太極當時迫切希望議和,影響了他對進取策略的認真思考;二是因為諸王貝勒劫掠財物的故習不改,並不重視攻城戰守;三是皇太極對漢官仍心存疑忌,如此之多的漢官倡議攻取山海關,是否別有用心,也促使皇太極心理上的提防和疑慮;四是因為攻堅不易,代價太大;五,也是最根本的一條,是皇太極害怕在滿族發展不夠充分之時入據山海,會即刻被漢族同化。
實際上,皇太極未敢在天聰年間攻取山海關,還有一個重要原因,就是明軍十分重視山海關這個京師的門戶,因此在關前關上層層設防,並不易攻取。明朝統帥熊廷弼、孫承宗、袁崇煥等之所以反對王在晉、高第等人放棄遼西、退守山海的意見,就是要在山海關外層層佈防--大凌河、小凌河,寧遠、錦州、松山、杏山,乃至中前所、中後所、前屯衛,即所謂「守關當於關外守之」,使皇太極攻取山海關等於攻取十數個堅城,所耗代價並非可與僅攻佔一個山海關城可比。因此,天聰三年、八年,崇德元年、三年、七年等幾次入關,都繞道西行,或從蒙古科爾沁草原進入喜峰口,或入山西趨宣大,或由延慶入居庸關,或由牆子嶺毀邊牆而入,全不考慮山海關。而天聰三年袁崇煥回援京師,正是自山海關調集各部扼守,自己搶居薊州;崇德元年阿濟格出邊攻明,皇太極又另派多爾袞、多鐸等人率勁旅往山海關進發,牽制彼處的明軍,說明山海關的防守力量還是比較強的。正如後來皇太極所認為的那樣,「大軍屢入塞,不得明尺寸地,皆由山海關阻隔,而欲取關,非先取關外四城不可」。結果崇德六年到七年,清軍連克錦州、松山、杏山、塔山,開始打開通往山海關的通路。於是,崇德七年(1642年)九月,李國翰、佟圖賴、祖澤潤、祖可法、張存仁等一起請求皇太極「直取北京,控斷山海」,以成大業,而皇太極則堅持認為「北京如大樹,不先削其兩旁,何能傾仆。朕今不取關外四城,豈能克山海關?」他這種充分認識到自己的實力,穩紮穩打,步步為營,消滅敵人有生力量,而決不急躁冒進的戰略思想使及其難得的,從實踐上看,也是非常正確的。
到順治元年三月中旬,由於吳三桂奉詔盡撤遼民入關,關外寧遠諸城便為清軍不戰而得,清軍且乘勝追至山海關下,「屯紮懊惱嶺下,不攻關,亦不去」,等待多爾袞的命令。按照皇太極生前的想法,這時攻打山海關可謂時機成熟,但他無法料及的是,形勢有了突然變化,農民軍已攻佔了北京,甚至山海關也已為農民軍所有。那麼,多爾袞這次全力攻明是否可以攻取這個軍事重鎮,然後進逼畿輔,抑或仍舊走老路,繞道而西,「毀邊牆而入」?
二、吳三桂降清
吳三桂降而復叛於農民軍,重據山海關後,自己已處於腹背受敵的窘境。既然與農民軍不共戴天,就勢必求助於關外清軍。且不說吳三桂與清朝統治者有著階級性質上的一致,其親屬同僚大都在為清朝服務這一點,也對他降清極為有利。特別是吳三桂打出為恢復明朝而戰、替先帝復仇的旗號要求清軍入援,不僅對降清的他心理上是個安慰,在號召漢族地主階級方面也會順利得多。於是,吳三桂立即派人召集山海關的士紳大戶,緊急商議如何對付非常可能出現的農民軍大軍平叛的情況。正像這些士紳之一的余一元詩中所記述的:「一朝忽下令,南郊大閱兵。飛騎喚吾伎,偕來共參評」。但是,由於山海關城小人多,很多居民商賈又因戰亂而遷移,因此吳軍的供給已成問題。「倉庫淨如洗,室家奔匿多。關遼五萬眾,庚呼如何!」但事情緊急,只有強向百姓紳商征餉,所謂「捐輸兼斂科」,然後把全體軍民全部武裝起來,準備對付農民軍的討伐。隨即他們又一同定計,一方面派人出關向清軍求援,一方面又派人西去,向農民軍詐降,以爭取時間,等待清軍來助。
三月二十六、七日吳三桂自玉田叛歸山海關,四月初消息便傳入京師,但未得到確認。至唐通被擊潰,吳三桂正式扯大旗宣佈反對大順政權確已為李自成所知,已是四月初十左右,這一日,「平西伯吳三桂移檄至京,近京一路盡傳」。李自成聞訊,便於十二日召集部下商議東征,並定於次日啟程,親政山海關。行期一定,李自成便將明大學士陳演、定國公徐允貞、新建伯王光通等官員貴戚六十餘員斬於西華門外,留牛金星、李牟等人守京師,以安後方。十三日,李自成率劉宗敏、李過等六萬人馬(註:《流寇志》說是五萬,《孤臣紀哭》、《四王合傳》,以及《明史紀事本末》等均作六萬,當為此數。加上已赴山海關的唐通、百廣恩所部三萬,當有十萬上下,所以《流寇志》後又說「自成合兵十餘萬攻之」。),出東長安門赴通州,十五日抵密雲,十七日至永平,十八日便派先頭部隊前去攻打山海關。
山海關之戰,從事後來看,對清軍和農民軍來說都是關鍵性的一戰,因為在山海關這個地方,兩軍將要第一次交鋒,並且一決勝負。而且山海關之戰的勝負,將決定兩大政權的命運。李自成得到吳三桂降而復叛的消息後立即出征,說明他意識到了山海關的重要性,但他並沒有意識到此去要與清軍接仗,並且始終抱有招撫吳三桂的僥倖心理。因此,他不僅把明太子朱慈和永王、定王,以及吳三桂之父吳襄帶在軍中,試圖再以君父之德感而化之,而且把明降臣張若騏帶在軍中,為他出謀劃策,也是希望以張與吳三桂的親誼關係來勸降吳三桂。因此,當吳三桂派高選、李友松、譚邃環、劉泰臨、劉台山、董鎮庵六人前來詐降緩師時,李自成必然受到影響。我們知道,李自成軍進山海,可自通州、三河、玉田、盧龍直抵山海關,但在三河遇到了這六個詐降者之後,不知為何又北赴密雲,然後回過頭來,奔東南至盧龍?無論這是不是詐降者詭計得逞的表現,但行軍路線延長,誤了一天的時間,戰機就被耽擱了,沒有能在清軍抵關之前消滅吳三桂,因此還在山海關戰役發生之前,就已潛伏下了李自成農民軍必敗的因素。
然而戲劇性的是,清軍也並不是一開始就抓住了戰機、意識到這裡要發生一場生死存亡的鬥爭得!四月初九日,多爾袞同多鐸、阿濟格、孔有德、耿仲明、尚可喜、羅洛渾、尼堪、博洛、滿達海、博和托、沈志祥,以及朝鮮國世子,與八旗固山額真、梅勒章京一道詣堂子、奏樂、行禮、陳列八纛,對天行禮。然後統帥滿洲、蒙古八旗的三分之二,漢軍八旗全部,及三順王、續順公德兵馬,鳴炮出征。十三日,清軍到了遼河邊,三、四天只走了一、二百里。多爾袞在這裡把洪承疇找來,徵求他的意見。因為降清漢官中,只有洪承疇和農民軍面對面交過手,對這仗怎麼打,洪承疇最有發言權。於是,洪承疇向多爾袞建議:
第一:「今宜先遣官宣佈王令,以示此行,特掃除亂逆,期於滅賊,有抗拒者,必加誅戮,不屠人民,不焚廟舍,不掠財物之意。仍佈告各府州縣,有開門歸降者,官則加升,軍民秋毫無犯。若抗拒不服者,城下之日,官吏誅,百姓仍予安全。有首倡內應,立大功者,則破格封賞。法在必行,此要務也。」一方面重申了範文程關於申嚴紀律、實行安撫政策的建議,一方面又通過威脅和利誘,勸告沿途官民歸順。
第二:「流寇初起時,遇弱則戰,遇強則遁。今得京城,財足志驕,已無固志。一旦問我軍至,必焚其宮殿府庫,遁而西行。賊之騾馬不下三十餘萬,日夜兼程,可二、三百里,及我兵抵京,賊已遠去,財物悉空,逆賊不得除,士卒無所獲,亦大惜也。今宜計道裡,限時日,輜重在後,精兵在前,出其不意,從薊州、密雲近京處,疾行而前。賊走則即行追剿,倘仍坐據京城以拒我,則伐之更易。如此庶逆賊撲滅,而神人之怒可回,更受其財畜以賞士卒,殊有益也。」洪承疇當然不知道農民軍此時正發兵奔赴山海關平叛,因此建議清軍輕裝簡行,迅速繞道入邊牆,從密雲直下正南,以迅雷不及掩耳之勢,在農民軍「逃遁」之前,圍住北京。如果多爾袞接受了洪承疇的建議,並在吳三桂乞師之後仍然這樣做的話,便會形成偶然的批亢搗虛、圍魏救趙之勢,因為李自成的主力已離開京師,彼處只有萬餘守軍,如清軍乘虛攻下北京,便會與吳三桂一起,形成對李自成東征軍的兩面夾擊之勢,農民軍的境況將會更為不利。
第三:「初明之守邊者,兵弱馬疲,猶可輕入,今恐賊遣精銳,伏於山谷狹處,以步兵扼路,我國騎兵不能履險,宜於騎兵內選作步兵,從高處觀其埋伏,步兵在前,騎兵在後。比及入邊,則步兵皆騎兵也,孰能御之?若沿邊仍復空虛,則接踵而進,不勞餘力。抵京之日,我軍連營城外,偵探勿絕,庶可斷陝西、宣府、大同、真、保諸路,以備來攻,則馬首所至,計日功成矣。流寇十餘年來,用兵已久,雖不能與大軍相拒,亦未可以昔日漢兵輕視之也。」對於如何與農民軍交戰提出了具體的戰略戰術,特別值得注意的是,洪承疇敦請多爾袞重視農民軍的戰鬥力,不要對其掉以輕心,對多爾袞後來的決策影響很大。
從以後事態發展來看,多爾袞基本接受了洪承疇的建議。儘管此次出兵意在奪取中原,但對農民軍的沿邊防禦,如山海關等關的手背情況不甚瞭解,使多爾袞不敢貿然輕進,只得緩緩前行。到十四日,多爾袞還傳令於次日行獵。十五日到翁後,仍不過離瀋陽三百多里,顯然是在猶豫觀望。然而就在這時,從南邊來了兩名使者,他們的突然到來,竟使整個局勢改觀,可以說對滿族本身的社會發展道路,乃至對中國封建王朝興衰更替的結局產生了重大影響,其效果如此,當然是當事人們所無法料及的。
來人正是吳三桂差來向清兵求援的使節--副總兵楊坤、遊擊郭雲龍。
四月十五日晨六、七點鐘,清軍起程行進了五里左右,遇到了吳三桂差來向清兵求援的使節--副總兵楊?、遊擊郭雲龍。多爾袞立即下令停止前進,召見這兩個求援使者。二人向多爾袞呈交了吳三桂的信函。信上說:
「我蒙先帝提拔,肩負遼東總兵的重任,王爺的威望,我是一直深慕的。但春秋之義,不能越境交往,所以很久沒敢聯繫,作為臣子的情誼,諒王爺應該理解。如今我國以寧遠孤立一方,命我放棄寧遠,鎮守山海關,從而鎮守東部邊疆、防衛京城。不想流寇攻打北京,由於人心不穩,奸黨開門投降,先帝不幸身亡。如今賊首稱帝號,搶掠婦女財物,罪惡之極,真是赤眉、綠林、黃巢、安祿山之流,天人共怒,眾叛親離,馬上就會失敗。……各省宗室紛紛興舉義兵,山左江北,星羅棋布。我受國厚恩,不忍百姓遭難,據守邊門。雖想興師問罪,以安人心,但京東地小兵弱,特泣血求助。我們與你們通好二百餘年,今我們遭國難,你們應有惻隱之心,而亂臣賊子也不是你們所能容忍的。除暴剪惡,拯救危難,救民水火,是大仁大義之事;興滅跡絕,取威定霸,可得大名大功,何況流寇聚集了金帛子女無數,清軍一到,都是王爺你的。王爺以蓋世英雄的身份,在此關緊時刻,希望考慮我這個亡國孤臣的忠義之言,速選精兵直入中協、西協,我自率部直抵北京,滅流寇於宮廷。我報答貴朝的決不是財帛,而將裂土以酬。……本應上書貴朝皇帝,但由於不知你們的禮節,所以只好請王爺轉奏。」
吳三桂在這封信中,除了說明當時形勢及一些客套話之外,主要表明他站在明王朝立場上請求清軍支援的態度,還沒有表示表示降清。其條件是與清軍分治中原,或說「訪東宮及二王所在,立之南京,黃河為界,通南北好」。再者請清軍入喜峰口、龍井關,牆於嶺諸處(即中協、西協),自己從山海關出兵(即東協),分兵合擊。吳三桂派出信使時是十三日,顯然不知道農民軍已起兵東征,或者還寄希望前去北京詐降的六個人能取得成功,因此並未請清軍直奔山海關。也許,吳三桂也不希望清軍佔據自己的勢力範圍,因為他此時還是希望清軍「幫忙」之後仍撤歸一隅。
多爾袞看了信,當然會感到意外。他沒想到屢招不降、抗拒關寧的吳三桂會如此輕易向清軍敞開大門,特別是吳三桂並不說投降,而且讓清軍另道入邊,不赴山海,更使人有些懷疑。他對阿濟格和多鐸說:
「莫非三桂知我南來,故意引我上鉤?而且我軍三次圍困明都,不能立克,自成一舉破之,其智勇肯定過人,如今率大軍而來,志不在小,是不是想乘勝攻遼?」
於是他派學士詹霸、來袞赴錦州與郭雲龍去山海關探聽虛實,楊坤留在清軍營中作人質。奇怪的是,為什麼多爾袞出兵時未把操紅衣大炮的漢軍帶在軍中以備攻城之用,而此時才突然派人去召喚?是多爾袞以前並沒有考慮攻打關內各城(如北京)?還是多爾袞對吳三桂不放心。假如兵臨城下,發現是詐,便可用大炮攻關?由於記載上的缺陷,我們很難回答這些問題,但我們至少可以說,多爾袞雖然知道這是一個千載難逢的大好機會,但對吳三桂的真實用心仍然疑慮重重,不得不做好各種應急準備。
經過一天策劃商議,四月十六日,大兵啟程向山海關進發,當日到西拉塔拉。多爾袞已寫好給吳三桂的覆信,叫人送去。信上說:
「我們一向想與明朝修好,屢次寫信,但明朝君臣不管國家受難,軍民死亡,不曾有一言相答,所以我們三次進兵攻打,對明朝官吏表明我們的想法,就是要明朝皇帝考慮通好。如今我們不再這樣做了,只要平定國家、於民休息而已。我聽說流寇攻陷京師,明主慘死,不勝發指。於是率仁義之師,破釜沉舟,誓不返,滅亡流賊,出民水火。到平西伯遣使來信之時,我很高興,於是率兵前進。伯想報恩,與流賊不共戴天,當然是忠臣之義,所以儘管一向與我為敵,如今也不必因為以前的事存有什麼疑慮。……如果率眾來歸,一定封以故土,升為藩王,一方面報了國仇,一方面克保身家,子孫萬代,永享富貴。」
多爾袞這封信表面上冠冕堂皇,實際上就是一封招降書。他想讓吳三桂明明白白地表示歸順,別想走第三條路。因此他根本不理會吳三桂提出的什麼「裂土分封」條件,而是以一國之主的口氣,用「封以故土,升為藩王」的條件招降吳三桂;而且沒從中、西協入邊,逕直南下,直奔山海關而來。這一番書信來往,乃是多爾袞與吳三桂討價還價的「外交」鬥爭的第一回合。
在這種即心懷疑慮,又還在討價還價過程中的情況下,多爾袞當然不會急速前進。四月二十日,即四天後,多爾袞以平均每天六十里的速度來到連山驛(寧遠以北,今錦西),這時候,李自成的大隊人馬已經來到山海關下。於是,吳三桂又派郭雲龍和孫文煥來見多爾袞,遞交了書信:
「接到王爺的來信,知大軍已到寧遠,救民伐暴,扶弱除強,義聲震天地。您幫助我們實在是為了我們先帝,我的感謝是微乎其微的。我按您的指教,立即派出精銳到山海關以西的緊要處,引誘賊寇速來。如今李賊親率黨羽駐紮永平一帶,此乃自投陷阱,天意亡他。現在我已盡整精銳部隊,希望看時機合適就出發,如果有幸王爺速率軍隊直入山海,首尾夾攻,逆賊可擒,京東京西可傳檄平定。另外您的仁義之師,首重安民,發佈的檄文非常合適,但更請大軍秋毫無犯,這樣百姓心服,財物、土地也可到手,什麼事不能做成呢?」
這時吳三桂已得知農民軍逼近山海關,也從郭雲龍帶回的多爾袞書信中得悉清方的要求,更清楚清軍已直奔山海關而來,在這種情況下,吳三桂只得暫時放下一些具體的談判條件,緊急要求清軍入關。多爾袞見此書信,也就下定決心,立即日夜兼程,越過寧遠,小駐沙河驛(中後所與前屯所之間,距連山一百五十里,距山海關一百里),而後繼續出發。二十一日,清軍尚離山海關十里之遙,但已隱約可聞關內炮號轟鳴,喊殺陣陣。多爾袞知道,這是農民軍在與據守關城的吳三桂軍交戰。的確,歷史上著名的山海關之戰就在這天開始了!
三、石河西激戰
歷史上常把這次戰役稱為「一片石之戰」,《明季北略》卷20即如此記載。但經考察,一片石(又稱九門口)在山海關外十里,而李自成與吳三桂及與清軍的激戰均發生在山海關內的石河西岸(或稱石河西)。有人認為石河西即一片石附近,實際上相離深甚遠,一片石附近另有九門河,在那裡只發生過一次戰鬥(見光緒《榆林縣志》)。
李自成僅僅比多爾袞早到山海關一日。實際上,四月十八日前後,農民軍主力便已抵達永平,離山海關只有一百五十里左右,如果一天之內趕到關前大舉攻城,那麼多爾袞還在連山驛的時候就會聽到吳三桂的敗訊。但是,直到二十一日之前,農民軍還未有所動作,雖然缺乏史料記載,我們還是可以想像,這是因為李自成仍抱有招撫吳三桂的幻想,很可能在這段時間裡,利用其父其主對其加以招降的緣故。另外,也有可能是吳三桂的緩兵之計產生了效果,有些書記載李自成在用唐通等招降失敗後仍發給吳三桂犒金,而吳亦佯受,或許就是這種情況的說明。無論如何,那六名假降代表一直被李自成帶到山海關下,直到吳三桂假降露出破綻,他們企圖於陣前逃脫,這才被李自成殺掉五個,一個跑掉,身上還中了三箭。這也說明李自成直到最後才識破吳三桂的詭計,但寶貴的戰機卻喪失了,山海關的地主士紳自己也說,「關城卒賴以完」。
山海關除縣城以外,四面分別是東、西羅城和南、北翼城,起著拱衛縣城的作用。其中除南翼城偏近大海以外,其他三城均為攻取整個關城的障礙。因此,李自成大軍二十一日到山海關之後,立即調兵遣將,共計這三個城池。由於西羅城面向關內,前有石河,所以兩軍首先在這裡接觸。吳三桂與高第首先在石河西佈陣迎敵,兩軍對壘,自然是一番惡戰。從上午八、九點鐘一直殺到中午一點左右,歷時四、五個鐘頭。農民軍力戰得勝,首先在西北角擊退敵軍,然後以數千騎兵飛馳過陣,至西羅城北側,準備登城。眼看西羅城就要被農民軍將士拿下,守城將領又以偽降來騙取農民軍將領的信任,然後令偏將從北坡連貫而下,偷襲農民軍,城上又同時用大炮轟擊,裡外夾攻,使農民軍攻取西羅城的行動功敗垂成。我們看到,在李自成東征的整個過程裡,農民軍竟幾次因為敵人的詐降緩師而上當受騙,坐失良機。這不能用農民軍質樸善良來為其開脫責任,應該說,大順軍領導人在吳三桂降而復叛之後,仍對招降他抱有幻想是出現這種情況的根源,遺憾的是,正是這種幻想極大地損害了農民軍自己的千秋大業!
「炮聲如雷,矢急如雨」。雙方苦戰了大半日,直至下午時分,吳三桂開始支持不住了。就在他精疲力竭,精神處於崩潰之際,多爾袞抓住時機,突令清軍出擊。於是,清軍三吹號角,吶喊三聲,以白旗騎兵數萬從吳三桂軍右側突入,「萬馬奔騰不可止」。農民軍不畏強敵,仍然奮勇拚殺,劉宗敏勇冠三軍,但亦中箭負傷。由於農民軍已與吳三桂軍相持了大半日,傷亡者較多,而且力氣耗費甚大,因此無法抵擋一直作壁上觀、養精蓄銳的清軍。
況且清軍此次南來,出動人馬將近二十萬,加上吳三桂、高第的「關寧五萬眾」,自然是「胡兵似倍於流賊」。這樣,從力量對比上看,就是農民軍初次作戰,也不大可能佔據上風。因為儘管農民軍戰鬥力很強,但其對手清軍和關遼邊兵也都是久經戰陣,裝備上相差不多,這就決定了農民軍在這場戰鬥中難免失敗的噩運。在這種情況下,李自成(儘管他十萬分不情願)當即下令撤退,清軍則乘勝追擊,一直追出四十里開外,獲得許多駝馬和綢幣。
如前所述,農民軍山海關戰敗的因素是早已潛在了的:由於政策上的疏忽和戰略上的欠妥,使招撫吳三桂軍一同抗擊清軍的計畫成為泡影;東征途中幾度中計而失去稍縱即逝的寶貴戰機,使農民軍不能盡早消滅關上叛軍、阻絕清軍於關城之外;再加上戰鬥當中,清吳聯軍以多打少,戰術得當,就更奠定了農民軍的敗局。但需要澄清的是,農民軍東征並非一敗塗地,他們在二十一日的攻城戰中,在二十二日的圍吳戰鬥中,都顯示出他們英勇的鬥志。
石河西一役,也並非像清代官書吹噓自己戰功時所說的:農民軍「屍橫遍野、丟盔棄甲、自相踐踏」。因為農民軍敗退到永平時,還有數萬兵馬。山海關之戰中死傷的人員中,又有很多「脅從以及近鄉驅迫供糧之民」,但拋棄了許多器物當是事實。無論如何,多於多爾袞來說,山海關之戰的勝利意義重大,因為它為清王朝入主中原,實現皇太極乃至努爾哈赤的積年夙願奠定了基礎;對於他個人來說,決定性戰役的勝利對於他獨尊攝政的地位當然是一次最有效的鞏固。
夜幕又降臨了,兩天來一直震耳欲聾的炮聲和吶喊聲終於停息了。清軍追擊還師,在關內五里紮營,漸漸地也沒有了聲響。公元1644年山海關前這場生與死的搏殺就此落下了帷幕。
就在農民軍與吳三桂主力在石河西激戰的同時,另有幾支農民軍分隊在攻打北翼城和東羅城,唐通等也率軍赴一片石「出邊立營」,意在截斷吳軍北逃之路。當時北翼城的守將是山海關副總兵冷允登,面對農民軍對此城的重點猛攻,他也拚命抵擋,幾次打退農民軍的攻擊,但農民軍為了「聯絡直下」,「故獨日夜狠攻」。這樣,守城官軍軍心不穩,有些人企圖作農民軍的內應,使冷允登忙於「禦寇防奸,內外兼顧」,城池看來即刻不保。東羅城的情況也同樣不妙。當時除吳三桂在石河西與農民軍主力接戰,北翼城為山海關副總兵冷允登所率官軍駐守之外,西羅城與東羅城都是由山海關士紳馬維熙、呂鳴章等十人率鄉勇「總理」、「協理」守城,據說東羅城當時「孤當賊沖,危急勞瘁,倍於兩城」,顯然也處在危急存亡之際。特別是入夜後,吳三桂與高第已將主力撤回城中,連十幾里外屯駐的清軍都聽見「關上炮聲,夜深不止」。到黎明時分,吳三桂見形勢不妙,又知清軍已到關外,趕忙親自出關搬兵。就在這時,「北翼城一軍叛降賊」,農民軍蜂擁而上,冷允登率親兵抵擋,眼看不能遏止農民軍的進攻,幸得吳三桂一支援軍到來,才保城池未失。不幾時,清軍大舉入關,戰爭的形勢便從此逆轉。
四月二十一日清軍距山海關十餘里時,天色已經昏黑,多爾袞為了避免忙中出錯,便下令頓兵不進,觀察動靜,同時前鋒兵馬已在一片石與唐通部交戰,將其擊潰。但多爾袞十分警惕,令將士夜間披甲戒嚴,並半夜移陣,前往山海關以東的歡喜嶺駐紮,「駢闐之聲,四面踏至」,多爾袞親駐歡喜嶺上的威遠台,靜觀形勢的發展。這時,多爾袞心中還沒有完全打消疑慮,便派使節到山海關去偵察,吳三桂也多次派人催請清軍入關,據說「三桂遣使者相望於道,凡往返八次」。其中吳三桂曾派山海關士紳余一元、馮祥聘、呂鳴章、曹敏時、程印古五人去見多爾袞,並讓他們速去速回。多爾袞接見這五人時,「賜坐賜茶,款接和藹」,與範文程一起說明了來意,使這些地主官紳感激涕零,認為「惶惶十數語,王言實大哉!」雙方表示了相互信任之後,多爾袞便令範文程與這五人一齊到山海關城裡「曉諭軍民」,一方面以清軍即刻便來鼓舞士氣,一方面不外宣揚清軍此來為崇禎發喪的目的,表示嚴守軍紀,以安民心。這樣一來,增強了守城者的鬥志,為農民軍迅速解決戰鬥增添了困難。
在雙方使節多次交涉,山海關士紳又親見了多爾袞的基礎上,吳三桂決定親自出城去見多爾袞,請他立即發兵。而多爾袞遲遲不行,到此時已不是對吳三桂有什麼懷疑,而是雙方談判的條件還沒有講好。而形勢對吳三桂越是急迫,就越有利於多爾袞在談判桌上討價還價。這天天剛濛濛亮,吳三桂強冒矢林彈雨,率數騎赴歡喜嶺見多爾袞,與其進行了一場緊急談判。談判內容現在已不得而知,但可以估計他們是以扶明太子為帝,用裂土封疆酬謝清軍的條件成交的。多爾袞十分高興,立即與吳三桂對天盟誓,並與吳三桂約定:「讓你手下的士兵都在肩膀上繫塊白布,不然都是漢人,我們就沒法區分你的軍隊和農民軍了,免得誤殺。」並讓吳三桂先走一步,與農民軍進行決戰,並答應清軍隨後就到。
二十一日晚,清軍在一片石擊潰了唐通的小部隊,唐通即奔回關內,李自成自然也就知道了清軍的到來。他晝夜環攻山海關城,就是為了搶在清軍前面消滅吳三桂軍。由於已知清軍入關參戰,農民軍便在關內石河以西列陣,「北至山,南至海」,排成一字長蛇陣。而吳三桂先出迎戰,英王阿濟格率萬騎入北水門,豫王多鐸格率萬騎入南水門,為吳三桂左右翼,多爾袞親率主力部隊從關中門進,並即赴石河西。這時,吳三桂已揮兵上陣,與農民軍交手。這已是雙方第二次交兵了,儘管在前一天的戰鬥中,雙方都有損傷,但誰都知道這一次戰鬥將決定雙方的生死存亡,勝敗自此一舉,所以雙方都投入了全部精銳,希望在戰鬥中獲勝。
這真是一場惡戰!這天,大風狂吹,塵土揚起來,遮天蓋地,幾乎對面不見人,根本談不上整整齊齊地列陣交手。有些滿族將領不僅急躁起來,像承勢殺將過去,但被多爾袞止住。多爾袞對諸王大臣們說:「你們千萬不要越伍輕進,農民軍力量很強,不是輕易打得敗的。大家應各自努力,這一仗打勝了,大業就成了。」
然後他把八旗主力部隊面向大海,分層排開,主要針對農民軍的陣尾;而令吳三桂軍作為右翼之末,即最西端,實際上就是讓他作為前鋒,與列陣於石河西的農民軍首先交戰,自己銜住農民軍長蛇陣的陣尾,使其無法合圍自如,這體現了多爾袞戰術的高明之處。由於風捲黃沙,對面不見人,所以吳三桂軍出農民軍之不意,出現在農民軍陣前。
李自成在廟岡上觀戰,見此情形,急令農民軍包圍吳軍。霎時間,金鼓之聲,吶喊之聲傳到百里之外。在農民軍層層包圍之下,吳三桂率軍左衝右突,拚命死戰,但農民軍數量上勝於吳軍,戰鬥力亦很強,因此步步緊逼,前仆後繼。吳三桂軍被圍在核心,向左突圍,便有農民軍號旗向左指,使軍隊向左迎擊;吳軍向右衝擊,號旗便向右揮,農民軍又向右堵截,使吳三桂恰如甕中之鱉,幾無脫身之路,「陣數十交,圍開復合」。