明正统十四年(1449)二月,蒙古族瓦剌部落首领也先遣使2000余人贡马,向明朝政府邀赏,由于宦官王振不肯多给赏赐,并减去马价的五分之四,没能满足他们的要求,就制造衅端。遂于这年七月,统率各部,分四路大举向内地骚扰。东路,由脱脱不花与兀良哈部攻辽东;西路,派别将进攻甘州(甘肃张掖);中路为进攻的重点,又分为两支,一支由阿剌知院所统率,直攻宣府围赤城,另一支由也先亲率进攻大同。也先进攻大同的一路,“兵锋甚锐,大同兵失利,塞外城堡,所至陷没”(《明史纪事本末》卷32《土木之变》)。大同参将吴浩战死于猫儿庄。大同前线的败报不断传到北京,明英宗朱祁镇在王振的煽惑与挟持下,准备亲征。
兵部尚书邝埜和侍郎于谦“力言六师不宜轻出”,吏部尚书王直率群臣上疏劝谏,但英宗偏信王振,一意孤行,执意亲征。
7月16日,英宗和王振率20余万大军从北京出发,由于组织不当,一切军政事务皆由王振专断,随征的文武大臣却不使参预军政事务,军内自相惊乱。19日出居庸关,过怀来,至宣府。8月1日,明军进到大同。也先为诱明军深入,主动北撤。王振看到瓦剌军北撤,仍坚持北进,后闻前方惨败,则惊慌撤退。本欲使英宗于退兵时经过其家乡蔚州“驾幸其第”,显示威风;又怕大军损坏他的田园庄稼,故行军路线屡变。至宣府,瓦剌大队追兵追袭而来,明军3万骑兵被“杀掠殆尽”。13日,狼狈逃到土木堡,瓦剌军已紧逼明军。
此一战役,明军死伤十余万,文武官员亦死伤数十人。