公元前354年,秦趁魏兵伐赵国之际,突袭魏国,在元里(今陕西澄城)大败魏军,杀敌七千人,攻下少梁。公元前352年,享受着变法成果的秦国又领着强悍勇猛的士兵攻打了正忙于和齐、赵纠斗的魏国,安邑被迫降秦,心神不宁的魏惠王只得在这一年扩建洛水上的长城,此时的魏国虽然实力仍然强劲,却已能感受到来自秦国的日益增大的威胁。意识到秦国将成为自己可怕对手的魏国,在公元前351年调整了对秦政策,他将在之前战争中从赵国手里夺取的邯郸归还赵国,又想办法和齐、赵修好,然后便开始调转头专注地对付秦国。很快,魏国的大军一路伐秦,围攻了秦国的定阳(今陕西宜川西北),此时的秦国正于崛起之中,论实力秦国虽可以在魏国忙于与其他诸侯的战事时占些便宜,却还无力招架魏国的这种全面攻势。于是秦孝公在商鞅的帮助下和魏惠王在彤(今陕西华县)进行和谈,为表歉意,秦孝公将之前从魏国手里夺走的安邑、少梁都归还给魏国。
公元前344年,当魏国决定再给秦国一点教训,并联合十二个小国讨伐秦国时,秦孝公却通过外交手段让魏惠王联军伐秦的计划没有得到实现。秦孝公知道现在的秦国还不是魏国的对手,于是开始了蛰伏。于是在接下来的魏惠王称王,约诸侯会盟的时候,秦国故意放低姿态,派公子少官前去恭贺。而魏惠王则被秦国的“低姿态”迷惑了,觉得秦国已经不是心头大患了,不用再浪费兵力对付秦国了,将精力转移到别的国家。公元前343年魏国攻打韩国,却受到了韩、齐联军的拼死抵抗,秦国也趁势偷袭魏国,这一战,魏军大败,大将庞涓战死,太子也成为了俘虏。
魏惠王将太多国力耽搁在费力不讨好的战争上,魏国尽管有惠施等贤能之士辅佐,却仍无法扭转江河日下的现实。如此,对魏国而言,河西局势愈加危险。而秦国,若要实现东向扩张,必要吞入河西。公元前340年,魏国还没有从战败的伤痛中走出来,就遭遇了秦国的进攻。不仅如此,一向把魏国当做威胁的赵、齐也气势汹汹地加入了伐魏阵营,魏国派公子昂出兵迎敌,而公子昂的心思又远比不得商鞅机巧。商鞅一听说魏将乃公子昂,便连忙给公子昂写了一封信:“吾与公子欢,今俱为两国相,不忍相攻。可与公子面见,乐饮而罢兵,以安秦、魏。”公子昂信以为真,果真亲自到秦军营帐找商鞅畅饮,结果一进秦营就被秦军拿下,来不及做任何反抗就成为秦军俘虏。待两军交锋,失去了主将的魏军毫无悬念地吃了败仗。
秦孝公在公元前338年去世,他给继任者秦惠文王留下了一个强大的秦国和唾手可得的河西之地。秦惠文王虽然一上任就杀掉了在秦魏河西之争上立有大功的商鞅,却并未耽搁秦国吞并河西的历史进程。公元前330年,秦惠文王在大将公孙衍的帮助下,胜利完成了对河西阴晋的争夺战,而魏国也终于意识到自己再不可能凭借河西钳制秦国,只得将该地拱手相让。拥有了河西之地的秦国迅速跃升为不可小觑的战国一霸,威震中原。