作为地方土司,马千乘以三千白杆军从征,属延绥总兵马礼英部。依理,马千乘率部从军,已经尽到了土司对朝廷的义务,但秦良玉又统精卒五百,自备军粮马匹,随夫出征。为此,李化龙大为叹异,命人打造一面银牌赠与时年二十六岁的秦良玉,上镌“女中丈夫”四个大字,以示表彰。
〔此番进剿,阵容可谓豪华。刘珽、陈璘皆是朝鲜战场上的名将,日军主力小西行长的第二军团和岛津义弘的第五军团就完在这两人手中,其部队经历七年血战,战斗力极强,其余各部也大多属于边军,战斗力决非内地糜烂的卫所军可比。并且李化龙十分谨慎,不但征调熟悉播州地形的少数民族土兵随征,还以大量民夫支援后勤,稳扎稳打、分路策应。杨应龙如果在这样的情况下也能取胜,那他想打到北京估计也问题不大。〕
此时杨应龙共有兵约十五万人,大部分属于苗族土兵,杨应龙决定利用播州险峻的地形据守,发挥土兵山地丛林作战的优势,认为官军粮草不济,自然难以持久。于是,杨应龙撤回外围的部队,重点守卫娄山关、乌江、邓坎、桑木、河渡五处险要。
刘珽部作为平播主力,率先进攻綦江,拉开了平播之役的大幕。綦江当川黔之交,乃播州北部门户,虽地势相对较为平坦,不利于防守,杨应龙仍以其子杨朝栋领苗兵两万守卫,希望能阻截官军,消耗其锐气。
战幕方启,官军先是一阵火炮齐轰,刘珽舞动其标志性的八十斤大刀,当先杀出,其部紧随而上。苗军什么时候见过这种“热兵器”战争,早已阵脚大乱,加上刘珽名气太大,远远看去犹如凶神下凡,苗军大溃,杨朝栋急忙换马逃遁,綦江轻易失守。
随即,马礼英部进攻南川,同样轻易取胜。马礼英过于大意,疏于防范,播州军趁夜偷营,官军一时大乱。幸而此时马千乘、秦良玉所部白杆军一直保持戒备,迅速出击,播州军见官军杀出,纷纷退走。马礼英部整肃之后,进军天险桑木关。
桑木关峻险十分,官军的火炮难以运送,只有硬着头皮上前攻城,伤亡惨重。此时秦良玉见多年心血终于派上用场,主动请缨。白杆军顿显神威,苗族土兵的攀援能力本就高超,又有特殊兵器助阵,很短时间内就从峭壁上登入城关,官军在城下看着这一出“杂技”表演,不由目瞪口呆,直到关门轰然倒下才醒悟,蜂拥而入。桑木天险就此通过。
各路官军进展均较为顺利,唯独童元镇部在乌江天堑遭到惨败。此役,杨应龙亲自领军至乌江,以诈败诱使官军夺取乌江渡口,趁官军渡江时引军冲击,官军大败,战死溺死者上万人。
不过一路受挫并不能影响大局,各路官军仍按计划进军,杨应龙所依仗的五大据点已失其三。三月二十九日,刘珽部攻占娄山关。杨应龙知道胜败在此一举,调集剩余部队赶到娄山关,意图与官军决战。
四月一日,娄山关大战爆发。杨应龙以苗军正面攻城,希望夺回关隘。官军火器犀利,播州军无法靠近。杨应龙又派部将抄后山夺关,企图四面合围官军。刘珽亲率骑队冲击,另以军分两翼实施夹击,播州军大败。
至此,播州重要据点已全部被官军夺回,杨应龙被迫率部退守老巢海龙囤。五月十八日,八路官军齐聚海龙囤下,平播总督李化龙也亲临督战。
海龙囤作为杨氏经营数百年的根据地,自然有独到之处。该囤居龙岩山之巅,四面陵绝,左右环溪,仅山后仄径一线可以攀登,囤内围筑土城,月城三重;建楼房、仓库于其间;囤前设铜柱、铁柱、飞龙、飞凤、朝天、万安等九关,各关之间有护墙相连,随山势绵延十余里,别有一番气象。可谓一夫当关,万夫莫开。
官军千辛万苦来到这里,肯定不是来欣赏风光的,难攻也得攻。李化龙总督一声令下,大军筑成长围,开始轮番进攻。官军在囤前排开几十门火炮连连开轰,可惜由于地势陡峭,角度非常难以调整,效果甚微。而唯一的登囤小道峭如竖梯,官兵攀到半道,关上便滚木抛石、箭如雨下,官军非死即伤。一个月过去,一关都拿不下来。
此时有人建议围困海龙囤,待其粮尽而攻,李化龙当即否决。海龙囤仓库如林,而杨应龙囤积粮草多年,如果两军长期对峙,先粮尽的肯定是官军。 眼看时间推移,雨季将至,官军仍然毫无办法。 此时,秦良玉挺身而出,愿率本部白杆兵由后囤攀登进攻。六月初五夜间,五百白杆军再次展示了敏捷的身手,顺利登顶,奇袭成功,海龙囤内立刻陷入一片混乱,官军当即把握机会全力进攻。次日清晨,陈璘所部率先攻入内城,杨应龙见大势已去,乃引火自焚,雄伟的海龙囤由此化为灰烬。播州杨应龙叛乱至此划上了句号。