秦昭王聽從範睢"遠交近攻"的策略,首先向韓國發起連續進攻。
秦昭王四十二年,伐韓,取少曲(今河南濟源市東北少水彎曲處)、高平(今山西省高平市)。四十三年攻取韓的陘(今山西曲沃東北)。四十四年攻取韓太行山以南的南陽地,企圖截斷韓的上黨與本土的聯系。四十五年攻取韓國野王(今河南沁陽)等10 城,把韓國的上黨與本土聯系完全截斷了。韓王讓上黨郡守馮亭把上黨獻給秦國以求秦息兵。馮亭不聽,卻決定把上黨郡17 縣獻給趙國。此時趙國的惠文王已死,由其子孝成王繼位。孝成王想得到這片土地,征求臣下的意見,平陽君趙豹主張不受,因為會引起秦國來攻,平原君趙勝與趙禹主張接受。結果趙國接受馮亭獻地,趙封馮亭為華陽君,食萬戶城3座,封縣令3個千戶城,官民賜爵三級。趙國於是派軍隊取上黨,派廉頗率軍駐守長平,以防備秦軍來攻。這樣戰國時期最大最殘忍的壹次戰爭的導火線就點燃了起來。
秦國截斷上黨與韓本土的聯系,目的是要奪取上黨,恰如趙臣趙豹指出"秦蠶食韓地,中絕不令相通,固自以為坐而受上黨之地"。現在上黨地入了趙,秦當然不甘心,於是立即派左庶長王龁攻趙長平。趙將廉頗知秦遠道來攻,欲速戰,就采用堅壁高壘以待秦軍疲困,然後再反擊的策略。廉頗堅守3年不出擊,秦軍不能進。趙孝成王多次派人責讓廉頗出戰,範睢又派人用重金到趙國行反間計,稱秦軍只怕馬服子趙括,廉頗容易對付,他將要降秦了。趙王中秦計,於是派趙括代替廉頗為將。
趙括是趙奢的兒子,兵書是讀了壹些,但無實戰經驗,是位只會紙上談兵之徒。趙王要任他為將時,趙括的母親不同意,趙王不聽。趙括母親要趙王保證其子失敗後,不牽連她。趙王也同意了。
趙括取代廉頗後,全部改變了廉頗的作戰方針。秦國聽到趙括已代替廉頗,於是暗中任命武安君白起為上將軍,王龁為副將,下令軍中絕對保密。趙括到後,求勝心切,立即派兵出擊,秦軍佯裝敗走。趙軍追趕,陷入白起設置的包圍圈中。秦軍把趙軍包圍後,將其糧道斷絕。趙軍只得在包圍圈中築工事堅守,以待援軍。秦昭王聽到後,趕到河內,賜民爵壹級,把15歲以上的壯丁全部征發到長平助戰,用來堵塞趙國的援軍及糧道。趙軍被圍困46天,草糧斷絕,趙士卒"陰相殺食"。趙軍分為4隊,輪番向外沖擊,都不能突圍。趙括親自出戰,被秦軍射死,趙軍於是大敗,"數十萬之眾遂降秦"。白起認為趙士卒反復無信,於是將降卒全部處死,只放走240人歸趙報信。這次戰爭,秦軍前後斬殺趙國士卒達45萬,坑殺降卒40余萬人。趙國這次壯者盡死長平,國力大損。它繼齊國之後,也從此衰落下去,再不能同秦國壹爭高低了。