廉颇听说这个消息后,传令各营垒用心把守,不要与秦兵交战;又让士卒挖地几丈深,里面注满了水,军中官兵都不解其意。此时,王龁大军已到,在距金门山十里处驻扎。他先分兵攻打二鄣城,盖负、盖同出战都失败。王龁乘胜又攻打光狼城。冯亭也败阵,跑回金门山大营,廉颇接纳了他。秦兵又来攻垒,廉颇传令:“出去交战的,虽然胜了也要斩头!”王龁久攻不下,就把营地往前移动,离赵营仅五里,挑战几次,赵兵就是不出战。王龁说:“廉颇是老将,他率军作战,老成持重,很难对付。”偏将王陵献计说:“金门山下有一条流涧,名叫杨谷,秦、赵两国军队,共用这条涧水。赵军营垒在涧水东面,而秦军营垒在西边,水势从西向东南流,如果绝断此涧,使水不再向东流,赵军用不上水,过不了几天军中必会大乱,我们就趁乱攻击他们,定能取得胜利。”王龁认为他说得对,就派士卒将涧水绝断。至今杨谷又叫绝水,就因为这个。谁知道廉颇早挖好了深坎,注水有余,军营中日用水并不匮乏。秦、赵两军相持了四个月,王龁一仗也没打成,真是无可奈何,就派人回去告诉了秦王。秦王召范睢来商议对策。范睢说:“廉颇打仗很有经验,知道秦军强大,不轻易交战,他认为秦军远道而来,不能持久,想先拖垮我们,而后趁机攻击。如果这个人不除掉,我们最终也攻占不了赵国。”秦王问:“你有什么计谋,可以除掉廉颇呢?”范睢让旁人退下,然后对秦王说:“要除掉廉颇,必须要用反间计,如此这般……非得花费千金不可。”秦王大喜,立刻将千金交付范睢。范睢于是派他的心腹门客从小道进入邯郸,用千金贿赂了赵王的大臣将领,散布谣言说:“赵军将领中唯有马服君最勇猛,听说他的儿子赵括勇猛超过了他的父亲,如果任用他为大将,必将势不可挡!廉颇年老而且胆怯,屡战屡败,死亡的士卒已有三四万,如今又被秦兵所逼迫,用不了多久就会投降秦国。”赵王先前听说赵茄被杀,连失三城,就派人去长平催促廉颇出战。廉颇坚持坚壁固守的计策,不肯出战。这时,赵王已怀疑他胆怯,等听到左右大臣将领的话,信以为真,于是就召来赵括问道:“你能为我攻击秦军吗?”赵括回答说:“秦国若是任用武安君为大将,我还得筹划一番;若是王龁,就不值一提了。”赵王问:“为何这么说?”赵括说:“武安君数次统帅秦军,先在伊阙打败韩、魏,斩首二十四万;再攻打魏国,夺取大小六十一城;又向南攻击楚国,攻克鄢、郢,平定巫、黔;回头又再攻打魏国,击败大将芒卯,斩首十三万;又攻打韩国,攻克五城,斩首五万;又斩赵将贾偃,将他的二万兵卒沉溺于河中,战必胜,攻必取,威名显扬,各国军士望风而栗,我若与他对垒交战,胜负各半,所以我还真得筹划一番。说到王龁,他是秦军新任用的大将,只是趁廉颇胆怯,才敢深入;若是遇上我,就像秋风扫落叶一样,实在不值一提。”赵王十分高兴,当即任命赵括为上将,赐给黄金彩帛,派他带着符节去替代廉颇,又给他增加精兵二十万。赵括检阅完军队,用车装载着黄金彩帛,回家拜见母亲。他母亲问道:“你父亲临终留下遗言,告诫你不要作赵将,你今日为何不推辞?”赵括说:“不是不想辞,无奈朝中没人能比得上我!”他母亲于是上书赵王说:“赵括白读了他父亲的兵书,不知变通,不是个将才,请大王不要派他去!”赵王召来赵括的母亲,亲自询问。他母亲说:“赵括的父亲赵奢为将军时,所得赏赐,全部分给军中士卒,接受任命之日,就住宿在军中,从不问家事,与士卒同甘共苦;每件事都广泛征求众人意见,不敢独断专行。如今赵括一为将,就傲慢无比,军吏无人敢仰视,所赏赐的黄金彩帛,全部拿回自己家。作为将军怎能如此?赵括父亲临终时,曾告诫我说:‘赵括若为将军,赵兵必败!’我十分赞同,请大王另选良将,万万不可任用赵括!”赵王说:“我的决心已下定了。”赵括母亲说:“大王不听我的劝告,若是兵败,请不要连累我们一家。”赵王应允了。赵括于是率领军队出邯郸,往长平进发。
再说范睢所派的门客,还在邯郸,他四处仔细打听,知道了赵括向赵王所说的全部内容,并知道了赵括已被任命为大将,便连夜赶回咸阳报信。秦王与范睢商议道:“看来此事非得武安君来了结了。”于是就改派白起为上将,王龁为副将,传令军中严守秘密,若是有人泄漏武安君为将者,一律斩首。再说赵括来到长平关,廉颇验过了他的符节,就把军籍交给了他,自己带着几百个亲兵回邯郸去了。赵括一上任,就把廉颇的计划、制度全部更改,军垒合并成大营。此时冯亭正在军中,几次规劝赵括,他都不听。又把以前的将领撤掉,换上自己所带的将士。还严厉命令道:“秦兵若是前来,每个将士都要奋勇争先。如果得胜,立即追逐,不让一个秦兵逃回去!”此时,白起已来到秦军大营,他听说赵括更改了廉颇的计划和命令,就先派出三千个士卒出营挑战。赵括则一下子出兵一万来迎战,秦军大败逃回。白起登高观望赵军,对王龁说:“我知道怎样才能战胜他了!”赵括打胜了这一场小仗,高兴得手舞足蹈,派人去秦营下战书挑战。白起让王龁在战书上批道:“来日决战。”然后退军十里,又驻扎在王龁先前建立军营的地方。赵括高兴地说:“秦兵害怕我了!”于是杀牛犒劳军士,传令说:“来日大战,定要活捉王龁!”白起安营已定,便召集诸将听令。派将军王贲、王陵率万人列阵,与赵括轮番交战,只能输不能赢,引得赵军来攻秦军营壁,便算立功。
再派大将司马错、司马梗二人,各领兵一万五千,从边道绕到赵军营地的后面,断绝运粮道路。又遣大将胡伤率兵二万,驻扎在附近,只等赵军打开营壁出来追逐秦军时,立刻杀出,将赵军截为两段。又遣大将蒙骜、王翦各率轻装的骑兵五千,伺候接应。白起与王龁坚守大本营。正是:“安排地网天罗计,待捉龙争虎斗人。”再说赵括吩咐军中,四更做饭,五更准备行装,黎明时列阵前进。行进不到五里,就遇见了秦兵,两阵对峙,赵括派先锋傅豹出马,秦将王贲应战,交战三十多回合,王贲败退逃跑,傅豹在后追击,赵括又派王容率兵帮助。
又遇上秦将王陵,略战了几个回合,王陵又败。赵括见赵兵连连得胜,就亲自率领大军追击。冯亭此时又劝告说:“秦人多奸诈,他们的失败不可信。
元帅不要再追击了!”赵括不听,追奔了十余里,来到了秦军营门前。王贲、王陵绕营而逃,营门并没有打开。赵括传令一齐攻打,连打了几天,秦军固守营地,无法攻入。赵括派人回去催促后面的援军,转移营地,一齐进攻。
只见赵将苏射飞骑而来,报告说:“后营被秦将胡伤率兵阻挡了,不得前来!”赵括大怒道:“胡伤如此无礼,我当亲自前往!”派人探听秦军的行动,回报道:“西路军马最多,而东路无人。”赵括指挥军队向东路转移。行进不到二三里,大将蒙骜从斜刺里杀出,大喊道:“赵括,你已中了武安君之计,还不投降!”赵括大怒,挺戟就要与蒙骜交战,偏将王容站出来说:“不劳元帅,让我来立功。”便与蒙骜交锋起来。这时,王翦率领的一支军队又杀到,赵兵死伤很多。赵括预料一时难以取胜,便鸣金收兵,随便找了一处有水草的地方安营。冯亭又一次劝告说:“作战靠的是一股锐气,现在我们虽然失利,但若能拚命战斗,还可以脱身回归本营,在那里尽力抗击敌人。若在这里安营,前后都受到夹击,困境重重,以后再也不可能逃脱出去!”赵括依然不听。命令军士筑成长型营垒,坚壁固守;一面派骑兵飞速赶回赵国,向赵王求援,一面又催促后面的军队赶紧运来粮饷。谁知运粮的道路,又被司马错、司马梗领兵阻断。白起的大军阻在前方,胡伤、蒙骜等大军又截断了后路,秦军每天传武安君的命令,招赵括投降。赵括这时才知道白起真的在军中,吓得心胆俱裂,魂不附体。
再说秦王得到武安君的捷报,知道赵括兵困长平,就亲自来到河内,征召壮丁,凡年龄在十五岁以上的,都令他们从军,分几路掠取赵军的粮草,阻绝赵国的救兵。赵括被秦军围困了四十六天,军中无粮,士卒自相残杀而食,赵括也禁止不了。于是把军兵分为四队,傅豹一队向东,苏射一队向西,冯亭一队向南,王容一队向北。吩咐四队,一起鸣鼓,夺路杀出重围。谁知武安君白起,又预选了射箭手,环绕着赵军的营垒埋伏,一见营垒中出来人,不管是兵卒还是将领,举箭便射。四队军马,突围了三四次,都被射回来。
又过了一个月,赵括实在压不住心头的愤怒,挑选了上等精锐兵卒五千人,都穿戴上重铠甲,骑坐骏马,他自己握戟当先,傅豹、王容紧随其后,拚死突围。王翦、蒙骜二将一起上来阻击,赵括大战了几个回合,还是冲不出去,转身想回营垒,突然马摔倒坠地,被乱箭射死。赵军大乱,傅豹、王容也被射死。苏射想带着冯亭一同逃走,冯亭说:“我三次劝告都不听从,现在到了这种地步,真是天意啊!又何必要逃走呢?”拔剑自刎而亡。苏射逃脱了出来,进入边远的胡地。白起竖起了招降旗,赵军都弃兵解甲,跪在地上投降,还高喊“万岁”。白起让人割下赵括的脑袋,往赵军营地去招降。营中军士还有二十多万,听说主帅被杀,没有人再敢出来作战,都愿意投降。胄甲兵器,堆积如山,营中一切,都归秦军所有。白起与王龁商议道:“先前秦国已攻克野王城,上党也在掌握之中,那些士卒百姓却不愿依附秦国,而愿意去归附赵国。现今赵军兵卒先后投降的,总合起来将近有四十万人,如果一旦兵变,靠什么来制止呢?”于是将投降的士卒分为十营,派十位将军统率,又配上二十万秦军,各赐给牛肉和酒,扬言说:“明天武安君将要挑选赵军士卒,凡是精锐能战的,发给兵器,带回秦国,随时准备征用;老弱病残,都发回赵国。”赵军士卒大喜。这一天夜里,武安君密传了一道命令给十位将军:“一更的时候,凡是秦兵,头上都要系一片白布襄。凡是头上没有白布的,就是赵国人,应当全部杀光。”秦兵奉令,在一更的时候一起行动。投降的士卒根本没有准备,又没有武器,只能束手就毙。又有蒙骜、王翦等将军领着军士巡逻,那些逃出营门的降卒,抓住便杀。四十万军卒,一夜之间全被杀尽。血流淙淙有声,杨谷的水,都变成了红色,至今还被称为丹水。武安君收集降卒的头颅,堆积在秦军营垒之间,称为头颅山。还在上面修盖了一座台,这座台十分高大,也称作白起台。后来唐玄宗巡幸到此,凄然长叹,命高僧三藏设水陆道场七昼夜,超度亡魂,又命名杨谷为省冤谷。
史臣有诗云:高台百尺尽头颅,何止区区万骨枯!矢石无情缘斗胜,可怜降卒有何辜!总计长平之战,前后斩杀赵军兵卒共计四十五万,只留存年少者二百四十人没杀,放他们回邯郸,用以宣扬秦国的威势。