雙方兵力對比
首先來看兵力。李世民東征王世充的兵力記載五萬,史萬寶、黃君漢、王君廓等人皆是從五萬分的數路兵馬:
《資治通鑑》:旦日,帥步騎五萬進軍慈澗,世充拔慈澗之戍,歸於洛陽。世民遣行軍總管史萬寶自宜陽南據龍門,將軍劉德威自太行東圍河內,上谷公王君廓自洛口斷其餉道,懷州總管黃君漢自河陰攻回洛城,大軍屯於北邙,連營以逼之。
《冊府元龜·帝王部功業》:旦日陳兵水洛之上,步騎五萬帝舉麾誓眾曰……於是自轂州營於磁澗密遣黃君漢夜從河中下舟師回襲雒城克之……於是分遣總管史萬寶據龍門劉德威自太行圍河內王君廓屯雒口將趣成皋……
也許會有人提到竇軌的巴蜀兵,但這樣也忽略了李世民在戰前已經是益州道行台尚書令,那麼作為僕射的竇軌帶巴蜀兵跟從在五萬軍裏面不是挺正常嗎。明確作為援軍支援李世民的記載,只有竇抗的三千精騎。
但考慮到可能其他援兵沒有記載,李世民東征總兵力可能在六萬左右(可能因為武德二年在河東、河北皆遭遇重大打擊,加上南方要備御蕭銑,此時唐朝無法拿出十萬規模的軍隊)
《新唐書·太宗本紀》:高祖遣蕭瑀即軍中拜太宗益州道行台尚書令。七月,討王世充,敗之於北邙。
《(同上)卷十三》:後竇軌率巴、蜀兵擊王世充,以長遜檢校益州行台左僕射。
《冊府元龜·卷一百二十二》:四年二月戊申遣左武侯大將軍竇抗率精騎三千赴東都
李世民在虎牢關的兵力應該是3500精銳加上攻佔虎牢關的王君廓部和李績部,和一些未記載的兵力,可能在一萬到兩萬左右。
《資治通鑑》:戊午,王世充鄭州司兵沈悅遣使詣左武候大將軍李世績請降。左衛將軍王君廓夜引兵襲虎牢,悅為內應,遂拔之。……世民將驍勇三千五百人東趣武牢。
關於《屈突通列傳》提到的中分麾下,這只是李世民中分自己在青城宮的本軍,此前已經歷多次分兵河陽、懷州、龍門、轘轅關………這裏不再贅述。虎牢關也並非無法繞開的險關。
洛陽八關,失去河內,虎牢關將毫無意義。竇建德攻陷陽翟等縣,也足以從南面威脅,唐軍勢必需要分兵在懷州和轘轅關防備竇建德可能的進攻。唐末唐僖宗防備黃巢進攻東都,同樣也需要守備多個據點
《資治通鑑》:竇建德陷管州,殺刺史郭士安;又陷滎陽、陽翟等縣,水陸並進,泛舟運糧,溯河西上
《(同上)》:黃巢攻衛南,遂攻葉、陽翟。詔發河陽兵千人赴東都……又詔曾元裕將兵徑還東都,發義成兵三千守轘轅、伊闕、河陰、武牢。
關於竇建德軍隊數量,有十萬應該是毋庸置疑的,除非覺得竇建德並孟海公加徐圓朗都拿不出十萬。另外從王君廓俘虜濟北張青特來看,說明青州的部隊也有可能參戰了。
《資治通鑑》:竇建德使其將范願守曹州,悉發孟海公、徐圓朗之眾,西救洛陽。
《資治通鑑》:濟北張青特、上洛周比洮、胡驢賊等皆歸密。密悉拜官爵,使各領其眾。《資治通鑑》:丁巳,秦王世民遣王君廓將輕騎千餘抄其糧運,又破之,獲其大將軍張青特。
戰役過程
在雙方於虎牢關相持了一個月後,唐軍的糧草出現了問題,早在李世民東征王世充的時候,王世充就曾說「遠涉吾地,越三崤,饋糧千里,勤師遠出」表示唐軍後勤運輸困難。現在討伐王世充的戰爭從武德三年七月打到武德四年五月,持續近一年的東征讓唐軍的後勤終於快吃不消了。
《新唐書·卷十》:八月,王陳兵青城宮,世充悉精兵來拒,隔澗言曰:「隋失其國,天下分崩,長安、洛陽各有分地,吾常自守,不敢西顧。熊、谷二州在度內,不取,敦鄰好也。今王遠涉吾地,越三崤,饋糧千里,勤師遠出,將何求?」
竇建德了解這些情況,所以並沒有急於會戰,想等唐軍的牧草耗盡,李世民最擅長的騎兵無法發揮作用,再強攻虎牢關。
但李世民在夏軍中安插的間諜(也有記載是夏軍過來投降的士兵)告訴了李世民竇建德的計劃,李世民便將計就計,故意在黃河以北牧馬,做出沒有牧草的假象,騙竇建德來戰。等夏軍疲勞,準備找機會一波帶走竇建德。
這裏我們也可以看到雖然史書記載王君廓成功劫糧,竇建德連損大將部眾思歸。但此刻求戰的仍是李世民方,竇建德不可能在自己運糧困難的情況下,還要去等唐軍牧草耗盡。
王君廓的劫糧更多還是起到振奮軍隊士氣的作用。否則李世民何必「牧於河渚以誘之」,你不來打我,那我在虎牢關內等你把糧食耗光我再來追擊,豈不是更好嗎?
《資治通鑑》:建德意輕唐軍,遣三百騎涉汜水,距唐營一里所止。遣使與世民相聞曰:「請選銳士數百與之劇。」世民遣王君廓將長槊二百以應之,相與交戰,乍進乍退,兩無勝負,各引還。王琬乘隋煬帝驄馬,鎧仗甚鮮,迥出陣前以夸眾。
世民曰:「彼所乘真良馬也。」尉遲敬德請往取之,世民止之曰:「豈可以一馬喪猛士。」敬德不從,與高甑生、梁建方三騎直入其陣,擒琬,引其馬以歸,眾無敢當者。
戰爭先從雙方的小規模戰鬥開始,竇建德派出300精銳騎兵,李世民則派出戰功赫赫的王君廓領200精銳長槊步兵迎戰,雙方打得難分勝負,各自回營。
這個時候尉遲敬德發現王琬騎着隋煬帝曾騎過的戰馬上,鎧甲非常華美,遠遠地跑在隊伍的前頭當眾炫耀。就同高甑生、梁建方三人驅馬直奔敵軍,活捉了王琬,牽着那匹馬回來,夏軍沒人敢來阻攔。
▲《三國演義》虎牢關之戰雖為小說作者虛構,但歷史上真實的虎牢關之戰,卻也有猛將單挑的事跡存在
竇建德似乎從這些小規模戰鬥看出唐軍鬥志依舊高昂,並不像缺少糧草,又或許是聽聞過李世民使用騎兵的事例,竇建德陷入了猶豫,正和國子祭酒凌敬等群臣開會商議要不要此刻強攻關口。卻犯了一個致命的錯誤:
大軍既沒有進攻也沒有回營或者搭建防禦工事,而是一直從早晨到中午都在虎牢關前列陣待命,五月炙熱的陽光讓夏軍們逐漸感到十分厭煩和疲憊,紛紛坐在地上,還有不少士兵爭搶着去打水。
也許是覺得李世民兵力只夠守關,怎麼可能敢放棄關隘之險,兵力又怎麼足以發起進攻?竇建德沒有意識到這就像當年薛世雄在七里井輕視自己一樣。而李世民此刻已經召集好騎兵,正是要抓住竇建德失誤這個千載難逢的機會,發動一次強大的突襲攻勢。
李世民先用宇文士及領三百騎來試探夏軍。夏軍一些部隊果然出現了動搖,開始撤退。
《資治通鑑》:世民帥輕騎先進,大軍繼之,東涉汜水,直薄其陣。建德群臣方朝謁,唐騎猝來,朝臣趨就建德,建德召騎兵使拒唐兵,騎兵阻朝臣不得過,建德揮朝臣令卻,進退之間,唐兵已至,建德窘迫,退依東陂。
雖然唐軍剛開始的突襲給夏軍造成了不小的混亂,但是夏軍很快發起了反擊,並用人數優勢穩住了陣線,打退了前鋒竇抗的進攻。李世民看到前鋒進展不利,並不戀戰,隨後讓輕騎兵開始佯裝敗退,「親率輕騎追而誘之」。
夏軍紛紛開始對李世民的輕騎展開追擊,竇抗等人苦苦支撐。當夏軍自以為已經成功戰勝唐軍,想要殲滅這支不自量力、膽敢來偷襲的騎兵部隊時,卻沒想到自己已經步入李世民設置好的陷阱之中。
隨着唐軍第二梯隊重甲騎兵趕來扭轉了戰局,竇建德想召回深入追擊的部隊,卻也為時已晚,倉促回撤的夏軍來不及擺好陣型就被玄甲騎兵猛烈衝擊。李世民抓住夏軍追擊陣型散亂這個契機。
從夏軍陣線打開了缺口,李世民率李道玄等人繼續深入突破,一邊騎射一邊衝鋒,直衝出敵陣後,又重新返回,然後再次沖入夏軍陣中,如此反覆衝鋒突入四五次,諸軍步兵跟進騎兵打開的缺口乘勢合戰。
▲今衛星地圖上顯示的虎牢關一帶地形
《冊府元龜·帝王部功業》:眾軍繼至,建德回師而陣,未及整列,帝先登以擊之,所向皆靡,俄而眾軍合戰囂塵四起。
《資治通鑑》:世民帥騎赴之,所向皆靡。淮陽王道玄挺身陷陣,直出其後,復突陣而歸,再入再出,飛矢集其身如蝟毛,勇氣不衰,射人皆應弦而仆。世民給以副馬,使從己。於是諸軍大戰,塵埃漲天。
《舊唐書·竇建德列傳》:秦王馳騎深入,反覆四五合,然後大破之。
這次突擊,可以說是此前五百騎卷擊一萬驍果排槊兵和騎兵,屈突通領步兵跟進合擊大破王世充的放大版。
▲(唐代具裝騎兵復原)
《舊唐書·太宗本紀》:帝以五百騎先觀戰地,卒遇世充將萬餘人,帝進擊其騎破之。又沖步卒,出其陣後,以大羽箭射之,死者相繼,賊皆披靡。亦會眾軍繼進,合擊遂破之,斬首三千餘級獲其大將軍陳智略,世充僅以身免。
面對仍在負隅頑抗的夏軍,李世民又乘亂命秦叔寶、程知節等人從山地穿插迂迴到夏軍後方,多樹唐軍旗幟,同時進行前後夾擊。在陣型被衝散,後方又出現大量「未知唐軍」成為壓垮夏軍士氣的最後一根稻草,夏軍失去建制全面崩潰。
唐軍斬首三千,俘虜五萬(較少的斬首數也說明唐軍人數不會太多),生擒國主竇建德、曹州帥孟海公、起居舍人魏徵、尚書僕射裴矩、長孫安世、郭士衡等人。
《資治通鑑》:世民帥史大柰、程知節、秦叔寶,宇文歆等卷斾而入,出其陣後,張唐旗幟,建德將士顧見之,大潰,追奔三十里,斬首三千餘級。建德中槊,竄匿於牛口渚。車騎將軍白士讓、楊武威逐之,建德墜馬,士讓援槊欲刺之,建德曰:「勿殺我,我夏王也,能富貴汝。」武威下擒之,載以從馬,來見世民。
世民讓之曰:「我自討王世充,何預汝事,而來越境,犯我兵鋒!」建德曰:「今不自來,恐煩遠取。」建德將士皆潰去,所俘獲五萬人,世民即日散遣之,使還鄉里。
李世民在虎牢關之戰中,結合了奇襲、誘敵、迂迴包抄等多個戰術運用,也符合了李靖在衛公兵法里強調梯次進攻,先由戰鋒等部隊進攻。如果第一梯隊進攻受阻失利,引退立即由第二梯隊跳蕩和奇兵突入。之前引退到後方休整的戰鋒,則重組繼續加入衝鋒。
《衛公兵法》曰:聞鼓聲發,諸軍弩手、弓手及戰鋒隊,各令人捉馬,一時籠槍,大叫齊入。若弩手、弓手、戰鋒等隊引退,跳蕩、奇兵隊一時齊入,戰鋒等隊排比回面,還與奇兵同入。
結語
虎牢關之戰,李世民將自己作為統帥的堅韌與危險性表現得淋漓盡致。竇建德僅僅只是稍微猶豫了一下,沒有及時將大軍撤回營壘,就在戰場上遭到了相當慘重的失敗。
李世民的賭徒精神,再一次為他贏得了無比寶貴的軍事勝利。毫無疑問,這是徹頭徹尾地利用卓越而成功的戰術冒險,扭轉己方在戰略上極端不利的態勢。而虎牢關的勝利,也證明了李世民並非只是一位在戰略上佔據徹底優勢才能打贏戰役的將才。
事實上,虎牢關之戰中的騎兵戰術完全是教科書的級別的。僅此一役,李世民就當得起「歷史上最偉大的騎兵統帥之一」的偉大稱呼。