洪德砦之戰小樑太后親自帶兵,不讓樑乞逋參與,梁氏家族內部也產生了裂痕。仁多菱丁之侄仁多保忠敏銳察覺,與大首領嵬名阿吳、撒辰等合謀將樑乞逋捕殺。而章楶曾短暫調離陝西,利用這一小段間隙,小樑太后抓緊修築了沒煙峽、石門峽等要塞,一度將前沿推進至離渭州30裡處。紹聖三年(夏天佑民安七年,1096年),章楶族兄章惇拜相,屬強硬派人士,停止和西夏商議邊界。小樑太后大怒,多次興兵寇邊,互有勝敗。十月,小樑太后集結50萬大軍進攻鄜延,但各州縣均守禦完備,只好進攻金明砦。夏崇宗母子親臨前陣,擂響戰鼓,數十萬夏軍將士無不氣激,洪水般涌入金明砦,將守將皇城使張輿和2500名宋軍全部屠殺。勝後小樑太后非常得意地向宋廷上表稱:“朝廷待我刻薄,本來要攻打鄜延,但因爲我恭順,所以只取金明,未失臣節。”回到陝西,章楶立即提出在石門峽的出口修築兩個城砦,以控制夏軍出入,獲得朝廷批准。
西夏得知宋軍在峽口築城,由六路都統軍嵬名阿埋、都監妹勒都逋率領,集結十餘萬兵力來阻。章楶早已料到,派王文振率軍迎敵,出發前章楶強調主要任務是築城,不要貪戰,更不能遠出百里以外。王文振起初答應,但鈐轄苗履貪功,擅自帶兵出擊,在沒煙峽遭到伏擊,損失千餘騎。阿埋、妹勒趁機佔據高地,監視宋軍築城,所幸熙河路派出左騏驥使姚雄率7000兵來援,宋軍繼續築城。夏軍準備了五日後發起突襲,數萬夏軍每人手持一把鐵鍬和一束草,如狂風暴雨般從高處衝下,冒着宋軍箭雨用草填平壕溝,衝過來用鐵鍬猛挖城牆。姚雄奮力迎擊,被流矢射中肩膀,卻更加勇猛,宋軍也都被他的氣概所激,無不力戰。由於夏軍有數萬鐵鍬兵,這種陣型也從未演練過,宋軍城內的射擊火力越來越猛,夏軍逐漸不支,只好退去。宋軍斬獲三千餘級,俘獲數萬,估計都是那些鐵鍬兵。宋軍自身傷亡也很大,陣亡三千人以上。宋軍共用了22天築好城砦,賜名平夏城。
平夏城築好後,陝西各路紛紛效仿,堡壘一層層推進到西夏境內,宋軍依託這些堡壘執行“淺攻”戰術,一年間累計斬首以萬計,西夏人節節敗退。宋軍城堡控制的範圍恰恰是西夏最肥沃的土地,現在都不敢去耕種,夏人憤怒道:“唱歌做樂地,都被漢家佔卻,後何以堪?”西夏通過遼帝國斡旋,遼帝國又像以往一樣質問宋廷爲何要入侵西夏,但宋廷完全不予理會,繼續“淺攻”。小樑太后必須奮起反擊,號稱要像永樂城之役一樣,拔掉平夏城。習慣了西夏人傾國集結的戰法,宋人也感覺到了大戰來臨前的緊張空氣,甚至一度傳言這次會有150萬夏軍來攻。元符元年(夏永安元年,1098年)十月,西夏集結40萬大軍,出沒煙峽來攻平夏城。小樑太后親自帶兵進攻平夏,阿埋、妹勒、罔羅、嵬名濟等大將分出打援,營寨綿亙百里。這一次夏軍動用了一種新式大規模殺傷性武器:對壘。這是一種巨大的裝甲車,可載數百人,可以一邊填埋溝壑一邊推進,並配備強大的炮石武器,堪稱陸地巡洋艦。
章楶也早有安排,派驍將郭成駐守平夏,並傳檄各路前來救援,而且像往常一樣,清掃附近的補給點,預設伏兵在夏軍歸途伏擊。小樑太后又親自督戰,夏軍利用對壘晝夜猛攻,但宋軍的重炮、神臂弓也絕非易與,郭成從容指揮,夏軍戰死數千,傷者倍之,宋軍幾乎沒有損失。各路宋軍紛紛出擊,熙河將王愍擊羅薩嶺,西夏駙馬都尉罔羅陣亡,夏軍被斬首千餘級,公主被擒。鄜延將劉安、張誠擊樑檉臺,敗大首領咘心、嵬名濟。夏軍士氣開始低落,又圍困了13天,糧草漸乏,突然狂風大作。對壘都是高車,在前牛頓時代,結構力學畢竟不那麼完善,竟然有很多被吹折,夏軍士氣大潰,狼狽敗退。自負貌美如花、國色天姿的小樑太后直哭到披頭散髮,儀態盡失。此時宋軍的伏兵才紛紛出擊,涇原總管王恩等將蟄伏十餘日終於等到此刻,痛擊敗退的夏軍,殺敵二萬餘。平夏城一戰,西夏雖大舉集結,但章楶運籌帷幄,又一次教科書般地擊退敵衆,在殺敵數萬的情況下自身幾乎沒有損失,堪稱彈性防禦的一次完美戰例。