秦穆公三十四年(前626年)或三十五年(前625年)春季,秦穆公派孟明视等率兵攻打晋国,以报崤之战之仇,晋襄公领兵抵抗。二月七日,两军在彭衙(今陕西白水东北)交战。秦军大败,孟明视等退兵返回国。晋国人把秦军称为“前来拜谢恩德的部队。”但秦穆公还是任用了孟明视,孟明视更加努力于修明政事,给百姓以更大的好处。冬季,晋国的先且居、宋国的公子成、陈国的辕选、郑国的公子归生攻打秦国,夺取了汪地(今陕西澄城西),到达彭衙后撤军,报了彭衙之战的仇。
秦穆公三十六年(前624年),秦穆公再次重用孟明视等人,派他们领兵攻打晋国。秦军渡过黄河后就焚烧渡船,把晋军打得大败,攻取了王官(今山西闻喜南)和鄗地(今山西闻喜西),报了崤之战的仇。晋国人都守着城池,不敢出战。于是,秦穆公从茅津渡过黄河,筑坟埋葬从前在崤山战死的秦军士兵,为他们追悼发丧,痛哭了三天。秦穆公面对全军发誓说:“将士们!听着,不要喧哗,我向你们发誓。古代的人向老年人请教,就没有办错的事。为了反思我不采纳蹇叔、百里奚的劝谏而犯下的过错,所以作了这篇誓词,让后代记住我的过失。”
秦穆公三十四年(前626年),戎王听说穆公贤明,派由余到秦国考察。秦穆公向他展示秦国的宫室和积蓄的财富,对由余看后的回答感到惊讶,便向他询问治理国家的方法,得到回答后发现由余贤能,于是采用内史廖的建议,最终让由余离开戎王而归降秦国。秦穆公用接待客人的礼节接待他,询问攻打戎族的方式。
秦穆公三十七年(前623年),秦穆公采用由余的计谋攻打戎王,生擒了戎王,使十二个戎国服于秦国,秦国疆域增加了周边千里的土地,称霸西戎。周襄王派召公过带着金鼓等贺礼向秦穆公祝贺。 [1-3] [63-65]秋季,晋襄公攻打秦国,包围了邧地、新城,报了王官之战的仇。楚国人灭了江国(今河南正阳西南),秦穆公身着素服,移居侧室,减少膳食,撤除音乐,以表示哀悼,礼数超过了规定的限度。大夫劝谏他,他说:“同盟国家被灭亡,即使未能援救,难道还能不哀悼吗?我是以此来警戒自己啊。”
秦穆公三十九年(前621年),秦穆公去世,安葬