秦国,原本是地处西陲的一个小国,秦孝公时用商鞅变法,奠定了国家富强的基础。尔后,不断向外发展势力,国力强盛。秦昭王时,任用白起为将。白起素以深通韬略著称,秦昭王十三年(前294年),白起任左庶长,领兵攻打韩的新城(在今河南伊川县西)。次年,由左庶长迁左更,出兵攻韩、魏,用避实击虚,各个击破的战法全歼韩魏联军于伊阙(今河南洛阳龙门),斩获首级二十四万,俘大将公孙喜、攻陷五座城池(参见伊阙之战)。因功晋升为国尉。又渡黄河攻取韩安邑以东到乾河的土地。十五年,再升大良造,领兵攻陷魏国,占据大小城池六十一个。十六年,白起与客卿司马错联合攻下垣城。二十一年,白起攻赵,占取光狼城(今山西高平县西)。二十八年,攻楚,拔鄢、邓等五座城池。次年攻陷楚国的都城郢(今湖北江陵西北),焚毁夷陵(今湖北宜昌),向东进兵至竟陵,楚王逃离都城,避难于陈(参见鄢郢之战)。秦国以郢都为南郡。白起受封为武安君(言能抚养军士,战必克,得百姓安集,故号武安)。又攻取楚国,平定巫、黔中(今四川、贵州地区)二郡(参见黔中之战)。三十四年,白起率军攻赵魏联军以救韩,大破联军于华阳(今河南新郑北),魏将芒卯败逃,掳获韩赵魏(韩赵魏又称三晋)三国大将,斩首十三万(参见华阳之战)。又与赵将贾偃交战,溺毙赵卒二万人。四十三年,白起攻韩之陉城,攻陷五城,斩首五万(参见陉城之战)。四十四年,白起又攻打韩南阳太行道,断绝韩国的太行道。四十五年,攻韩的野王(今河南沁阳)。野王降秦,上党通往都城的道路被绝断(韩都新郑,上党必须由野王渡河始能通新郑)。郡守冯亭同百姓谋议道:“上党通往外界的道路已被绝断,我们已不可再为韩国百姓了。秦兵日渐逼近,韩国不能救应,不如将上党归附赵国,赵国如若接受,秦怒必攻赵。赵国受敌一定亲近韩国。韩、赵联合,就可以抵御秦国了。”于是派人报告赵国。赵孝成王与平阳君、平原君为此计议。平阳君说:“还是不要接受吧,接受后带来的祸患一定大于得到的好处。”平原君则认为:白白得来的土地,怎有不要之理,接受了会对我们有利。赵国果然接受了上党,封冯亭为华阳君。四十六年,秦攻下韩国缑氏、蔺两地。
昭王四十七年(公元前260年),秦派左庶长王龁攻韩,夺取上党。上党的百姓纷纷逃往赵国,赵驻兵于长平(今山西高平县),以便镇抚上党之民。四月,王龁攻赵,赵派廉颇为将抵抗。赵军士卒与秦斥候兵相遇,发生冲突,秦斥候兵斩赵裨将(裨将,武职)茄。六月,败赵军,取二鄣四尉。七月,赵军筑垒壁而守。秦军又攻赵军垒壁,取二尉,败其阵,夺西垒壁。
双方僵持多日,赵军损失巨大。廉颇根据敌强己弱、初战失利的形势,决定采取坚守营垒以待秦兵进攻的战略。秦军多次挑战,赵国都不出兵。赵王为此屡次责备廉颇。秦相应侯范雎派人携千金向赵国权臣行贿,用离间计,散布流言说:“秦国所痛恨、畏惧的,是马服君赵奢之子—赵括;廉颇容易对付,他快要投降了。”赵王既怨怒廉颇连吃败仗,士卒伤亡惨重,又嫌廉颇坚壁固守不肯出战,因而听信流言,派赵括替代廉颇为将,命他率兵击秦。
白起(前331—前257)赵括上任之后,一反廉颇的部署,不仅临战更改部队的制度,而且大批撤换将领,使赵军战力下降。秦见赵中了计,暗中命白起为上将军,王龅为尉裨将。白起名声太大,未免赵军有所防备,秦王下令“有敢泄武安君将者斩。”(《史记•白起王翦列传》)
白起面对鲁莽轻敌,高傲自恃的对手,决定采取后退诱敌,分割围歼的战法。他命前沿部队担任诱敌任务,在赵军进攻时,佯败后撤,将主力配置在纵深构筑袋形阵地,另以精兵5000人,楔入敌先头部队与主力之间,伺机割裂赵军。8月,赵括在不明虚实的情况下,贸然采取进攻行动。秦军假意败走,暗中张开两翼设奇兵胁制赵军。赵军乘胜追至秦军壁垒,秦早有准备,壁垒坚固不得入。白起令两翼奇兵迅速出击,将赵军截为三段。赵军首尾分离,粮道被断。秦军又派轻骑兵不断骚扰赵军。赵军的战势危急,只得筑垒壁坚守,以待救兵。秦王听说赵国的粮道被切断,亲临河内督战,征发十五岁以上男丁从军,赏赐民爵一级,以阻绝赵国的援军和粮草,倾全国之力与赵作战。
到九月,赵兵已断粮四十六天,饥饿不堪,甚至自相杀食。赵括走投无路,重新集结部队,分兵四队轮番突围,终不能出,赵括亲率精兵出战,被秦军射杀。赵军大败,四十万赵兵投降。白起与人计议说:“先前秦已攻陷上党,上党的百姓不愿归附秦却归顺了赵国。赵国士兵反复无常,不全部杀掉,恐怕日后会成为灾乱。”于是使诈,把赵降卒全部坑杀,只留下二百四十个年纪小的士兵回赵国报信。长平之战,秦军先后斩杀和俘获赵军共四十五万人,赵国上下为之震惊。从此赵国元气大伤,一蹶不振。
长平之战长平之战后,白起本拟乘胜灭赵。昭王四十八年十月,秦再次平定了上党,后军分二路:一路由王龁率领,进攻皮牢(今河北武安);一路由司马梗攻占太原。而白起自将围攻邯郸。韩国和赵国惊恐万分,派苏代用重金贿赂秦相应侯范雎说:“白起擒杀赵括,围攻邯郸,赵国一亡,秦就可以称帝,白起也将封为三公,他为秦攻拔七十多城,南定鄢、郢、汉中,北擒赵括之军,虽周公、召公、吕望之功也不能超过他。现在如果赵国灭亡,秦王称王,那白起必为三公,您能在白起之下吗?即使您不愿处在他的下位,那也办不到。秦曾经攻韩、围邢丘,困上党,上党百姓皆奔赵国,天下人不乐为秦民已很久。今灭掉赵国,秦的疆土北到燕国,东到齐国,南到韩魏,但秦所得的百姓,却没多少。还不如让韩、赵割地求和,不让白起再得灭赵之功。”于是范雎以秦兵疲惫,急待休养为由,请求允许韩、赵割地求和。昭王应允。韩割垣雍,赵割六城以求和,正月皆休兵。白起闻知此事,从此与范雎结下仇怨。
当年九月,秦又发兵,使五大夫王陵攻赵邯郸(参见邯郸之战)。正赶上白起有病,不能走动。二年正月,王陵攻邯郸不大顺利,秦王又增发重兵支援,结果王陵损失五名校尉。白起病愈,秦王欲以白起为将攻邯郸,白起对昭王说:“邯郸实非易攻,且诸侯若援救,发兵一日即到。诸侯怨秦已久,今秦虽破赵军于长平,但伤亡者过半,国内空虚。我军远隔河山争别人的国都,若赵国从内应战,诸侯在外策应,必定能破秦军。因此不可发兵攻赵。”昭王亲自下命令行不通,又派范雎去请,白起始终拒绝,称病不起。
昭王改派王龁替王陵为大将,八、九月围攻邯郸,久攻不下。楚国派春申君同魏公子信陵君率兵数十万攻秦军,秦军伤亡惨重。白起听到后说:“当初秦王不听我的计谋,现在如何?”昭王听后大怒,强令白起出兵,白起自称病重,经范雎请求,仍称病不起。于是昭王免去白起官职,降为士兵,迁居阴密(今甘肃灵台县西)。由于白起生病,未能成行。在咸阳住了三个月,这期间诸侯不断向秦军发起进攻,秦军节节退却,告急者接踵而至。秦王派人遣送白起,令他不得留在咸阳。白起离开咸阳,到杜邮,昭王与范雎等群臣谋议,白起被贬迁出咸阳,心中怏怏不服,有怨言,不如处死。于是昭王派使者拿了宝剑,令白起自裁。白起伏剑自刎时说:“我何罪于天而至此哉?”良久,又说:“我固当死。长平之战,赵卒降者数十万人,我诈而尽坑之,是足以死。”(《史记•白起王翦列传》)于是自杀。白起死时,是秦昭王五十年(公元前257年)十一月。白起死非其罪,秦人很怜惜他,乡邑地方都祭祀他。