宋真宗用妥協求和的辦法,安下了遼朝那一頭;西北邊境的黨項族(古代少數民族之一)貴族趁宋朝忙著對付遼朝的機會,經常侵犯宋朝邊境。宋真宗疲於應付,只好妥協退讓,封黨項族首領李繼遷為夏州刺史、定難軍節度使。公元1004年,李繼遷死後,又封他的兒子李德明為西平王,每年給大批銀絹,才平穩了三十多年。
李德明的兒子元昊(音hao)是個雄心勃勃的人。他精通漢文和佛學,多次帶兵打敗吐蕃、回鶻等部落,擴大地盤。他勸說德明不要再向宋朝稱臣。德明不願跟宋朝決裂,對兒子說:「我們三十年來,能夠穿上錦衣,都是宋朝的賞賜,可不好背叛他們啊!」
元昊說:「穿皮毛,牧牛羊,這是我們黨項的風俗。英雄好漢,應該創立自己的事業,哪能貪圖這點好處?」
德明說:「依你說,該怎麼辦?」
元昊說:「我們得到的賞賜,只是我們自己享受,可是部落的人還很窮困。依我看,不如拒絕朝貢,訓練兵馬。力量小可以去擄掠,大了可以去奪取土地,這樣上下都能富裕起來,豈不更好。」
可是李德明還是不肯接受他的意見,直到德明死去,元昊繼承了西平王的爵位,才按照自己的主張,設置官職,整頓軍隊,準備擺脫宋朝的控制,自立門戶。
他的叔父山遇勸元昊不要反宋,元昊不聽。山遇逃奔宋朝,宋朝的延州官員怕得罪元昊,反把山遇抓起來送還元昊。元昊知道他的意圖已經暴露,就在公元1038年,正式宣佈即位稱帝,國號大夏,建都興慶(今寧夏回族自治區,銀川市)。因為它在宋朝的西北,歷史上叫做西夏。
元昊即位以後,上表要求宋朝承認。那時候,宋真宗已經死去,在位的是他的兒子宋仁宗趙禎。宋朝君臣議論了一下,認為這是元昊反宋的表示,就下令削去元昊西平王爵位,斷絕貿易往來,還在邊境關卡上張榜懸賞捉拿元昊。這一來激怒了元昊,就決定大舉進攻。
那時候,宋軍在西北駐防兵士有三四十萬,但是這些兵士分散在二十四個州的幾百個堡壘,而且各州人馬,都直接由朝廷指揮,互相不配合。再加上宋軍好久沒有打仗,兵士缺乏訓練。西夏的騎兵卻是集中指揮,機動靈活,所以宋軍常常打敗仗。
過了一年,西夏軍進攻延州,宋軍又打了一個大敗仗。宋仁宗十分惱火,把延州知州范雍撤了職,另派大臣韓琦和范仲淹到陝西指揮抗西夏的戰爭。
范仲淹到了延州,把邊境上的軍事制度作了一番改革,他把延州一萬六千人馬分為六路,由六名將領率領,日夜操練,使原來十分散漫的宋軍提高了戰鬥力。
西夏將士看到宋軍防守嚴密,不敢進犯延州。他們議論說:「小范老子(指范仲淹)胸中有幾萬甲兵,可不像大范老子(指范雍)那樣好欺負了。」
范仲淹分析了雙方兵力,主張加強防守,牽制西夏兵力,但是韓琦卻主張進攻。
公元1041年二月,西夏軍由元昊親自率領,進犯渭州,韓琦集中所有人馬,還選了一萬八千名勇士,由任福率領出擊。
任福帶了幾千騎兵趕了一陣,見到一支西夏兵,雙方打了一陣,西夏兵丟下戰馬、駱駝就逃。任福派人偵察,聽說前面的敵兵不多,就在後面緊緊追趕。趕了三天三夜,來到好水川(今寧夏隆德西),天色已經黑了下來。任福命令將士就地休息,打算等第二天一早和預先約定的另一支宋軍會師好水川,把敵兵殺個片甲不留。
第二天,任福帶著宋軍沿好水川西進,到了六盤山下,沒有發現西夏兵。只見路邊有幾隻銀泥盒子,封得十分緊密,兵土們走上前去,拿起銀泥盒子聽了一下,裡面還發出一種跳動聲音。兵士報告任福,任福吩咐兵士把盒子打開。只聽得「噗噗」幾聲,接連飛出了一百多隻帶哨的鴿子,在宋軍的頭上盤旋飛翔。
原來,那小股西夏兵的敗退是假的。在六盤山下,元昊帶了十萬精兵,佈置好埋伏。只等那鴿子飛起,四面的西夏兵就一齊殺出,將宋軍緊緊包圍。宋軍奮力突圍。從早晨一直打到中午,敵陣裡揮動一面大旗。又有大批西夏兵從兩邊殺出。宋兵邊打邊退,許多人退到懸崖摔死。
任福身中十多支箭,兵士勸任福逃脫。任福說:「我身為大將,現在兵敗,只有以死報國。」他又衝了上去,被西夏兵刺殺了。
這一仗,元昊取得大勝,宋軍死傷慘重。韓琦聽到這消息,十分傷心,上書請朝廷處分,宋仁宗把韓琦撤了職。范仲淹雖然沒直接指揮這場戰爭,但是被人誣告,也降了職。
打這以後,宋夏多次發生戰爭,宋軍連連損兵折將,宋仁宗不得不重新起用韓琦、范仲淹防守邊境。兩人同心協力,愛撫士卒,嚴肅軍紀,西夏才不敢再進攻。