李純決定先在氣候溫和的南方用兵,2月份,高霞寓率領平蠻軍從眉州出動,往西南朝大渡河進發。南诏在大渡河沿岸布置了3萬多人,企圖阻止唐軍過河。
高霞寓前面參加過對劉辟的讨伐,元和七年又參加對吐蕃的戰事,積累了豐富的戰鬥經驗,對攻破南诏的防禦早就胸有成竹。唐軍首先向河對岸的南诏軍進行炮轟,在高處設立觀察哨進行指揮,哪裡有人就往哪裡炸,炸的南诏人仰馬翻。
南诏軍本來想趁着唐軍渡河時用弓弩射擊,沒想到唐軍不按套路出牌,先用大炮轟擊南诏軍,大炮的射程比弓弩遠,南诏軍無力反擊,隻能被動挨打。
打了一天,南诏軍就有點頂不住了,大部隊紛紛找隐蔽的地方躲藏,派少量人員觀察,準備等唐軍渡河時再反擊。
平蠻軍副将王之孝帶領水軍,從嘉州(今四川樂山)出發,在望星驿一帶登陸,從側後攻擊大渡河的南诏守軍,打的南诏軍猝不及防,立即派兵掉頭迎擊望星驿的唐軍。
高霞寓趁機率領平蠻軍主力渡河,從兩個方向同時夾擊,打的南诏軍大敗,不得不退往清溪關固守。
清溪關為南诏在北部的險關,地勢險要,是唐軍攻下會川的必經之路。放在以前,這種險關唐軍打起來會很難,現在有了火器,唐軍根本不怕,決定采取正面強攻、側翼打擊的方式攻打。
由高霞寓帶領炮兵在前方對着清溪關猛轟,炸的關口一片狼藉。王之孝帶領少數精兵,攜帶火槍和炸彈,從山間小路爬到清溪關附近的山頭上,占據有利位置後,唐軍不斷向清溪關扔炸彈,打冷槍。面對唐軍的前後夾攻,南诏守軍無力反擊,紛紛找地方躲避火器的攻擊。
看到清溪關正面基本沒有南诏軍在抵抗,高霞寓指揮火槍隊,對清溪關進行一陣猛攻。
南诏軍剛開始還用弓箭反擊,被唐軍密集的火力打的紛紛中槍倒斃,剩下的南诏軍看到形勢不利,當即撤退,但是唐軍緊追不舍,跑的慢的南诏軍紛紛投降,前後隻經過三天,唐軍順利拿下清溪關。
前後不過十天,唐軍先後攻破南诏的大渡河、清溪關兩個重要防線,南诏損失兩萬多精銳,很多南诏士兵嘗到了唐軍火器的厲害,喪失了抵抗的意志。
待高霞寓帶領平蠻軍到達會川的府城三阜城(今四川西昌)時,這裡的南诏軍主力已經逃跑,僅留下一些老弱病殘在守城,經過一陣勸降,唐軍順利收複三阜城。
對于攻打南诏,高霞寓信心滿滿,南诏軍的實力比吐蕃軍弱,唐軍的武器優勢明顯,南诏早晚會屈服,讓高霞寓憂心的是後勤和瘴氣。
南诏一帶,山路崎岖,通行不便,山區内又多瘴氣,運送物資較難,士兵容易生病。高霞寓決定在三阜城休整一段,就地籌備物資,醫治傷病員,待休整準備充分後,再攻打拓東。
在高霞寓率軍在北路猛攻時,吸引了南诏軍主力在北部防禦,南方兵力相對較少,蔣義率領平南軍按照計劃,從南線發動攻擊。
平南軍從交州出發,溯紅河而上,向通海進發,一路順利攻下邊關隘口賈勇步,然後直撲通海府城目則城(今雲南蒙自)。南诏軍在通海隻有一萬多人防守,在兵力和武器上根本不是平南軍的對手,隻三四天的功夫,平南軍拿下目則城。