到达贺兰北口时,兀鲁兀台见路口已有上万夏军步兵阵列在前,两边路口的山腰埋伏着大量重兵器车兵和数百辆重兵器车。
随后兀鲁兀台指挥全军一边缓缓前进,一边通过放箭的方式攻击夏军。
趁贺兰北口两边山腰的夏军重兵器车兵注意力转移到贺兰北口和下面的过道时,埋伏在山顶的的蒙古骑兵开始向夏军重兵器车兵放箭。片刻之间,很多夏军重兵器车兵被射死。蒙古骑兵又一手高举旗帜一手挥舞马刀,向山下冲来,直取剩下的夏军重兵器车兵。经过一番血战,蒙古骑兵最终控制贺兰北口以及沿途的夏军重兵器车。
于此同时,兀鲁兀台率领蒙古骑兵也在攻击贺兰北口的夏军。
夏军正抵挡时,忽闻两边山上杀声雷动,夏军赶紧向两边山上张望,只见蒙古骑兵从山上往下攻。
夏军见漫山遍野到处都是蒙古战旗,不知山上埋伏有多少蒙古骑兵,以为被包围了,纷纷后撤。
至正午时分,三万蒙古骑兵消灭了贺兰北口和沿途夏军,缴获大量重兵器车,来到贺兰口中段的夏军大寨。
李元吉没想到蒙古骑兵如此英勇,赶紧关闭寨门,准备迎敌。
监军惊恐的说,元帅,敌军虽然只有三万人马,但都是精锐骑兵,我军虽然现有六万人马,但都是步兵,恐怕很难阻击蒙古骑兵的进攻。
李元吉沉思片刻说,传令下去,让我的两名副将,各率一万人马埋伏大寨以南五里的两边山头,听我将令行事。
此时蒙古骑兵押送重兵器车来到夏军大寨以北一里处,兀鲁兀台本来打算先用重兵器车攻击夏军大寨,但他的这支骑兵根本不会操作重兵器车。
于是兀鲁兀台让全军再进半里,一边派几个懂党项语言的蒙古骑兵劝降,一边派后勤部队把准备的油桶搬到阵前,偷偷的把早已准备好的石油涂抹在前排蒙古骑兵的箭头上。
正当李元吉还在心想我们怎么可能投降之时,却见蒙古火箭铺天盖地飞来。
李元吉从来没有见过这种阵势,都看呆了,好在大寨还在射程之外,没有造成夏军人员损伤。
李元吉愣了一下,赶紧指挥夏军一边高举盾牌进行抵挡,一边采用射箭的方式进行反击。
蒙军火箭虽然没有怎么射到夏军,却引起寨门燃起熊熊大火。不过大寨依山而建,很多材料都是石料,只有少数是木材,所以大火燃到寨内时,火势减小。
李元吉还在庆幸时,这时恰好刮起山风,大火很快蔓延,把山寨包围,李元吉痛苦的说,难道天亡大夏?
一边的监军着急的说,元帅,赶紧撤退吧,不然全军都会葬身火海之中。
李元吉只得率领大军后撤。
兀鲁兀台见夏军后撤,就留下一万骑兵,让俘获的夏军重兵器车兵教他们操作重兵器车,自己亲率两万骑兵,挥舞战旗,敲起战鼓,呐喊着向夏军追去。
李元吉率领大军一边撤退,一边传令埋伏两边山上的夏军出击。
两万夏军从贺兰山顶漫山遍野向蒙古骑兵杀来,与谷底的三万夏军合兵一处,共同抵抗蒙古骑兵。
双方大战了很长时间。因为山间多乱石,无法发挥蒙古骑兵优势,兀鲁兀台想着成吉思汗诏书让其保存实力,于是命令全军假装战败,把旗鼓仪仗都扔掉,向贺兰北口方向撤退。
看到蒙古骑兵撤退, 李元吉误认为蒙古骑兵因为害怕而撤退,就命令夏军全面反攻。
兀鲁兀台带着两万骑兵退到刚才夏军大寨边,此时留在原地的一万骑兵已将重兵器车布置完毕,并学会了简单的操作方法。兀鲁兀台率领两万蒙古骑兵穿越重兵器车后,躲在后面。
不一会儿,五万夏军追了过来。夏军步兵只有百户长以上将领才配有战马,李元吉率领这些将领冲在前面。兀鲁兀台马上命令部下使用重兵器车进行攻击。无数的长箭、石块飞向夏军将领,很多被射死、砸死。李元吉被一支长箭射了个“透心凉”,当场气绝身亡。
兀鲁兀台随即命令全军全线出击,向夏军发起总攻。夏军只得向南逃跑,但哪里跑的过蒙古骑兵。很多夏军被杀死,剩下的全部投降。兀鲁兀台以微小的代价顺利通过贺兰口。
次日凌晨,兀鲁兀台率领二万七千人马,向贺兰北口进发。