燒當羌一動,讓等得已經著急的李息鬆了口氣,邊軍已經盡了最大的努力,現在已經是強弩之末了,石松平再不動,恐怕最先敗退的就是周士信了。李息當即命令徐自為率軍側擊石松平的騎兵,自己則攻擊石松平後隊的一萬羌族步兵。離開防禦陣地的羌族步兵根本不是漢軍鐵騎的對手,李息只一個衝鋒就徹底打垮了行進間的一萬步兵。李息沒有停留,立即整軍從石松平的後面發動攻擊。
可憐的石松平根本沒有還手的能力,徐自為對他的側擊把他一下打懵了,他果斷地命令右翼五千羌騎發動絕死地反衝鋒,這些羌騎就像是扔進池塘的小石子,很快就被淹沒了。不過這五千羌騎也為石松平重新整軍贏得了時間,當他重新調整部署,準備迎戰的時候,李息又帶人殺了上來,這下石松平的所有騎兵在三萬漢騎的打擊下很快就土崩瓦解,逃出去的不過數千人,其他的都倒在了漢軍的馬蹄下。
為了取得更大的勝利,李息來不及讓部下歡呼勝利,他讓自己的司馬陳超率五千騎兵追趕逃竄的燒當步卒,徐自為的副將孫烈追趕燒當騎兵,他自己則和徐自為一起加入了攻擊姚絡的白馬羌的戰鬥。
姚絡瘋了,其實一開始他和周士信打成了平手,可他擔心自己損失太大,所以一直在向石松平救援,當他聽到石松平出動的消息總算鬆了口氣,可惜時間不長就聽說石松平受到漢軍主力的圍攻。他還在考慮如何應對,就聽說石松平的燒當羌被漢軍地擊潰,石松平生死不明,而漢騎已經向他們逼近。
姚絡愣在那裡半天沒有說話,無論部下怎麼說他都沒有反應。有人來報右翼被突破,他也沒反應,大營被攻破,他也沒反應,步兵被包圍,他還是沒反應。他的兒子姚興在一旁不斷地叫喊著,提醒他馬上要被漢軍包圍了,可姚絡還是沒有反應。
姚興終於忍不住了,他讓手下帶著五千中軍保護姚絡先撤,自己帶著一萬步卒在後掩護,至於那些與漢軍交戰在一起的部隊,他想救也救不成了,乾脆被他作為遲緩漢軍追擊的一個棄子。
一場轟轟烈烈地決戰只用了半天就分出了高下,五萬漢軍鐵騎擊敗了十萬羌兵。這一仗,漢軍以傷亡六千的代價殺死兩萬八千羌兵,俘虜三萬一千餘人,燒當羌幾乎全軍覆滅,石松平生死不明,白馬羌只有一萬三千人逃出戰場,而諸多小部落組成的聯軍左翼損失最小,他們在準備渡過刪丹河救援著被郡國兵的騎兵部隊擊退,在損失數千人後向西北方向敗退。
天黑的時候,李息讓部隊停止追擊,收攏部隊,清點俘虜,打掃戰場。
李息的第一步任務完成了,他並不想繼續追擊,更不想馬上平定西羌,因為他記得張全說過,匈奴人會漁翁得利,想坐享其成,如果鷸蚌分出了勝負,那麼漁翁就不會再出來了。對於李息來說,匈奴才是他的主要目標,羌人不過是個小卒子。
現在這裡只有徐自為和他有一樣的想法,其他眾將不明所以,一直要求繼續追擊,都被他們壓了下來,現在李息最關心的還是張全和終軍的消息,尤其是張全的安全。
張全此時正準備伏擊白馬羌的殘兵,由於他和李息的大軍被羌人阻隔,同時為了隱藏自己的行蹤,他並沒有派人與李息進行聯絡,不過他一直派人監視著戰場上的動靜。通過羌族聯軍戰場的調動及敗退的跡象,他對這場決戰也能猜出個大概。
神箭營所有的將領都在向上天祈禱,希望羌人撤退時能夠走這條路。張全把偵察分隊的都派了出去,不斷有令人振奮的報告,先是羌軍右翼步兵潰敗,再是右翼騎兵被殲,最後是敵人中軍逃竄,由於離刪丹河太遠,那的信息沒有傳過來。當對方中軍向金雞嶺逃竄的消息傳來,所有的人都興奮了,餓狼似的眼神再次出現在每個人的臉上。五千騎兵在前,近萬步兵在後,足夠神箭營飽餐一頓了。
張全傳令各部不得暴露,沒有命令不許攻擊。這次,張全把身邊的五個隊沿峽谷展開,丁虎隊在西,負責攔頭,李勇承隊在東,負責掐尾,李陵、張樂、趙天興三隊居中,小雷的工兵分隊分散在各隊中,他和李鋒則帶著親衛分隊李勇承的後面,既是戰場指揮,又是李勇承的預備隊。
姚絡領軍狂奔,此時他已完全清醒,現在他的目的只有一個,那就是逃過漢軍的追擊。姚興捨棄的前軍和騎兵已經全軍覆沒,現在他正帶著近萬步卒邊打邊撤,好在李息沒有下令全面追擊,不然他的小命也早就沒了。
當姚絡帶人進入金雞嶺後,才稍稍地鬆了一口氣,這裡受地形的限制,易守難攻,再多的騎兵在這裡也沒有用武之地。兩邊是十多丈的峭壁,沒有上山的路,中間是幾十步寬的一條路,多數地段只能容納十來騎並行,而且峽谷彎彎曲曲,不利於騎兵的衝擊。所以即使漢軍追來,他只要派幾百人斷後就可以阻擋。
姚絡一邊派人打聽姚興的情況,一邊催促部下速速通過,免得等姚興的步卒到達這裡造成道路堵塞。
張全在高處注視著姚絡的行動,等五千羌騎全部進入峽谷他才命令手下:「射響箭,點烽火。」由於埋伏的地段較長,所以張全採用了兩種方式傳遞命令,很快,看到信號的部隊也射出響箭,點燃烽火,以提醒鄰近的部隊,整個峽谷頓時亂成了一鍋粥。
姚絡騎在馬上,忽然聽到幾支響箭的聲音,接著是幾處升起的狼煙,隨即而來的是漫山遍野的喊殺聲和山上射下來的弓弩。他剛在馬目大喊一聲:「怎麼回事?」就被一箭射中胸口,大叫一聲,栽下馬來,周圍的衛士急忙把他拖到隱蔽處,並由幾十個人用盾牌把他團團圍住,立即為他急救。