商朝自商湯滅夏建立,經歷六百多年後,傳位至第三十一位國王商紂王帝辛時,已是危機四伏。據《史記·殷本紀》記載:帝辛「資辯捷疾,聞見甚敏;材力過人,手格猛獸;知足以拒諫,言足以飾非,矜人臣以能,高天下以聲,以為皆出己之下」,但「好酒淫樂,恣於婦人」。政治上帝辛耗巨資建鹿台、矩橋,造酒池肉林,致使國庫空虛。寵信愛妃妲己以及飛廉、惡來等一幫佞臣,妄殺王族重臣比干,囚禁箕子,造成諸侯臣屬紛紛離叛。軍事上帝辛致力於用兵於東南夷族,雖然戰爭取得勝利,俘虜了「億兆(上百萬)夷人」,帝辛也被譽為「百克(百戰百勝)」,但商軍主力遠征東夷,造成商都朝歌(今淇縣)內部空虛,無兵可守,給武王伐紂造成可乘之機。
面對商紂的昏庸無道,周人就講「天命無常,惟德是輔」,說商王無德,西伯有德,所以天命已經轉移到姬昌身上,公元前1056年,姬昌對內稱王,即周文王。公元前1055年,姬昌出兵伐犬戎。翌年又討伐侵凌鄰國的密須,解除了伐商的後顧之憂。公元前1053年,姬昌出兵東向攻黎(山西省長治市西南);公元前1052年,攻城(今沁陽市);公元前1051年,攻取了商王寵臣崇侯虎的崇國。這三場戰爭勝利後,周切斷了商朝同西部屬國的聯繫。
牧野之戰的雙方兵力,雙方都動員了大量兵力,《周本紀》記載「諸侯兵會者車四千乘,陳師牧野,帝紂聞武王來,亦發兵七十萬人距武王」,學者們多認為發兵七十萬之說不實,或許為十七萬之誤,不過紂軍也應有相當的數量,《詩經·大雅·大明》有「殷商之旅,其會如林」,記述商周調動大軍,軍旗如繁盛的林木,飄揚在牧野。而武王在《牧誓》中說「我有邦君冢,司徒、司馬、司空、亞旅、師氏、千夫長、百夫長,及庸、蜀、羌、羯、微、盧、彭、濮人,稱爾戈,比爾干,立爾矛,予其誓」。可見周軍及盟軍數量也很多,除「兵會者車四千乘」的記載外,《周本紀》載武王「率戎車三百乘,虎賁三千人,甲士四萬五千人,以東伐紂」。《孟子·盡心》也有「武王之伐殷也,革車三百兩,虎靡三千人」,此外《戰國策》、《呂氏春秋》亦見類似記載
牧野之戰-牧地誓師。公元前1046年1月26日(《尚書》及禮論銘文均稱「甲子日」,但年份不詳。本詞條採用「夏商周斷代工程」的觀點),周武王親率戰車三百乘,虎賁(精銳武士)三千人,以及步兵數萬人,出兵東征。同年2月21日,周軍抵達孟津,與庸、盧、彭、濮、蜀等部族會合,聯軍總數達4.5萬人,不少方國的國君親自趕來。聯軍於2月26日布陣未完就下了雨,史稱聯軍共有「六師」。軍事史家推測,大概是三百乘戰車,三千名虎賁為一個「裝甲師」,為第一梯隊。其餘四萬多人分為五個「師」,在後面組成方陣,為第二梯隊。後來聯軍冒雨繼續東進從汜地(今滎陽市汜水鎮)渡河水(黃河,一說由孟津渡河)後,兼程北上,至百泉(今輝縣西北)折而東行。
27日清晨,在牧地,周武王莊嚴誓師說:「俗話說,母雞司晨,是家中的不幸。現在紂王只聽信婦人之言,連祖宗的祭祀也廢棄了。他不任用自己的王族兄弟,卻讓逃亡的奴隸擔任要職,讓他們去危害貴族,擾亂商國。今天,我姬發是執行上天的懲罰!……戰士們,努力呀!」周軍將士們士氣大振,即為《尚書》所記載之「牧誓」
牧野決戰周武王大獲全勝。朝歌方面,第一批緊急軍情前腳剛傳到,聯軍自己後腳就跟著來了,著實被打了個措手不及。朝歌城內沒有足夠的精兵可以破敵,而且也沒有可用的戰車,單靠步兵,很難和衝擊力強大的戰車陣相抗衡,更何況周軍士氣正銳。 帝辛驚聞周軍來襲,只好倉促武裝大批奴隸、戰俘,連同守衛國都的軍隊,開赴牧野迎戰。根《史記》記載,帝辛出動的總兵力有七十萬人,另一些文獻記載是十七萬。《詩經·大明》 稱:「殷商之旅,其會如林」。
關於這場戰役的經過,《逸周書 克殷》有很詳細的記載。周軍先由姜子牙派出數百名精兵出陣挑戰,震懾商軍並沖亂其陣腳;緊接著周武王親率主力跟進衝殺,徹底衝散對方陣形。商軍里的奴隸和戰俘原本就不想為紂王賣命,幾乎全部倒戈,商軍快速崩潰。紂王見狀,返朝歌,登鹿台,「蒙衣其珠玉,自燔於火而死」,商朝正式宣告滅亡。周武王抵達鹿台後,親自斬下紂王的頭顱示眾。
牧野之戰評價這是中國歷史上以少勝多,以弱勝強,先發制人的著名戰例,也是中國古代車戰初期的著名戰例。它終止了六百年的商王朝,確立了西周王朝的統治,為西周時期禮樂文明的全面興盛開闢了道路。牧野之戰中所體現的謀略和作戰藝術,也對中國古代軍事思想的發展具有不可低估的意義。