正德元年(公元1506年)冬天,刘瑾逮捕南京中御史戴铣等二十多人。王守仁不顾一切递上奏章企图解救,刘瑾发怒,把他杖责四十大棍,贬为贵州龙场驿丞。龙场一带群山连绵,高族、僚族人杂居。王守仁便根据他们的风俗加以教化、领导,这些少数民族人民很高兴,大家一起砍伐树木建造房子给王守仁居住。刘瑾被杀之后,经考察改任庐陵知事。入京进见武宗之后,升任南京刑部主事,吏部尚书杨一清却让他做验封官。后来又有几次提升,做了考功郎中,南京太仆少卿、鸿胪卿。
兵部尚书王琼一向以为守仁是个奇才。
十一年(公元1516年)八月,因为他的推荐,守仁升为右佥都御史,巡抚南、赣。当时南中地带盗贼四起,谢志山占领洪水、左溪、桶冈,池冲客占领浰头,都自封为王,与大庚的陈日能、乐昌的高快马。彬川的龚福全等遥相呼应,进占、劫掠各处府县,而福建大帽山的叛军詹师富等叉起兵。前任巡抚文森托病去职。谢志山联合乐昌的叛军夺取大庚,进攻南康、赣州,赣县主薄吴砒在战斗中死去。王守仁到任后,知道身边有不少人是叛军的耳目,于是传讯年长而狡猾的仆役加以审问,仆役浑身哆嗦不敢隐瞒,如实坦白,守仁就赦免了他们的罪过,让他们侦探叛军的情报,于是守仁对于叛军的行动也无所不知。于是他命令福建、广东合兵一处,首先讨伐大帽山的叛军。
正德二年(公元1507年)正月,督副使杨璋等在长富村打败叛军,进一步追击到达象湖山,指挥覃桓,县丞纪镛战死。守仁亲自率领精锐部队驻扎在杭山,又假装撤兵,出奇不意直捣敌人巢穴,俘虏和杀伤七千多敌人。
指挥王铠等活捉了詹师富。守仁接着给武宗上书,说自己权力太小,无法指挥将士,请给他旗牌,让他管辖军务,给他见机行事的权力。兵部尚书王琼听从并奏报了他的请求。于是王守仁改革部队编制:二十五个人为一伍,伍有小甲;两伍为一队,队有总甲;四队为-一哨,哨有哨长,协哨两个助理;两哨为一营,营有营官,参谋两人助理;三营为一阵,阵有偏将;两阵为一军、军有副将。都是临时行动时委命,而不是受朝廷任命,自副将以下,可以层层加以罚冶和定罪。
当年七月向大庚进军。谢志山乘机向南安发动猛攻,知府李颇打败了他。副使杨璋等也活捉了陈日能后凯旋,于是守仁准备讨伐横水、左溪的叛军。十月,由都指挥许清、赣州知府刑珣、宁都知县王天兴各率一军会师横水,李颇及守备郏文、汀州知府唐淳,县丞舒富各率一军会师左溪,吉安知府伍文定、程乡知县张戬扼守险要以阻止叛军逃跑。守仁自己在南康驻扎,离横水三十里,先派四百人埋伏在敌营的左右,然后进军攻打。叛军正在迎战,两边山上的伏兵举起了官兵的旗帜,叛军一见大为吃惊,以为官军已经攻占了自己的巢穴,因此一路溃散。官兵乘胜攻克横水,谢志山及其党羽萧贵馍逃往桶冈,左溪也被官兵占领。守仁因为桶冈地势险要,易守难攻,所以把兵营安置存接近平地的地方,用或战或降或福或祸的道理劝降敌军。叛军的守领蓝廷风等正征恐惧之中,见到守仁的信便很高兴,约定十一月一日投降。可是刑珣、伍文定的官兵已经冒着大雨,夺险而人。叛军碍于水阵,无力抵抗,刑珣一直向前,英勇奋战,伍文定和张戬又从右边出击,叛军措手不及,四散而逃,路上碰到唐淳的官兵,又被打败。
各路官兵攻占了桶冈,谢志山、萧贵模、蓝廷凤等叛军守领把自己捆绑了来到守仁帐下请求投降。总计此次战役,攻占叛军营地八十四个、俘虏斩首六千多人。当时,湖广巡抚秦金也打败了龚福全,龚军一部一千多人逃窜到这儿,诸将立刻将他们擒获,并将他们斩首。
于是在横水设立崇义县,节制瑶民各部。还师赣州,准备攻打浰头地方的乱军。
当初,守仁平定詹师富的乱军时,龙川的盗贼首领卢珂、郑志高、陈英都愿意投降。
到征讨横水时,俐头的盗贼首领黄金巢也率五百人投降,只有池仲容还没有攻下。横水一仗之后,池仲容才派他的弟弟池仲安来表示归顺,而又郑重其事地做着战斗和防御的准备,诈称卢珂、郑志高是他的仇敌,将会袭击他的军队,所以才做些防备。守仁假装把卢珂等杖打一顿,背地令卢珂的弟弟集合部队等待战斗,然后假装下令疏散部队。新春时节张灯结彩,大肆玩乐,池仲容将信将疑。守仁派人赏他过节物品,引诱他来称谢。池仲容果然带了几十三人下山,在教场上驻兵,用几人作陪进入王守仁帐中求见,守仁指责他说:“你们都是我的百姓,却干外面屯兵,难道是怀疑我不成?”接着就把他们带进祥符宫中,用丰盛的饮食招待。于是叛军大喜过望,越发感到安全。守仁把池仲容挽留下来观灯行乐。正月初三举办盛大宴席,在门里埋伏了刀斧手,乱军将领进来后,挨个儿加以擒拿、杀戮。接着亲率大军攻打叛军巢穴,接连打人上、中、下三浰,杀敌二千多人。余下的叛军逃往九连山,山势连绵数百里,地形陡峭,无法攻打。守仁于是精选了七百名壮士,穿着叛军的服装,跑到山崖下边呼叫,叛军就招呼他们上去了。官兵又从外边攻打,内外夹击,于是叛军被擒、被杀,没有剩下几个。于是在下浰设立和平县,安置部队防守,班师回朝。从此国境之内,一片安定。
当初,朝廷认为盗贼势力强大,所以发动广东、湖广的兵力进行联合围剿。守仁递奏章上去劝阻这样做,但奏章没有能够到达京城。
平定桶冈后,湖广的部队才到位,到平定涮头为止,广东部队还没有接到命令。守仁所带领的都是文职官吏和偏裨军校,但他平定了几十年形成的强大叛军,所以远近人士大为惊奇,奉他为神明。朝廷升他为右副都御史,后来又提升为副千户。
正德十四年(公元1519年)六月,王守仁受命为平定福建军队反叛的官员,走到丰城,宁王朱宸濠造反,知县顾祕把这事告诉了王守仁。守仁立刻进兵吉安,和伍文定一道召集兵马,调运粮草,准备战争使用的器械和船只,并发布檄文揭露朱宸濠的罪行,号召州县官吏各自率领下属和士兵勤王。都御史王憨中,编修邵守益,副使罗循、罗钦德,郎中曾直,御史张鳌山、周鲁,许事周侨,周知郭祥鹏,进士郭持平,贬官驿丞王思、李忠,都参加了王守仁的部队。御史谢源、伍希儒巡视回朝,从广东路过,守仁留下他们负责记功。于是召集众人开会,说:“宸漾如果出兵沿长江东下,那么南京就无法抵御,我想用计阻挠他东下,哪怕只让他迟误十天也就没有什么要紧的了。”于是他派出很多间谍,传命府县说:“都督许泰、欲永率领边疆的军队,都督刘晖、桂勇率领北京的守军各四万人,水陆并进。南赣王守仁、湖广秦金、两广杨旦各率领自己的部队,计十六万人,直接攻打南昌,所到地方官吏没有尽于职守,以军法论罪。”又写了一封信给伪政府的丞相李士宾、刘养正,是一封蜡封的密信,信中说到他们归降的诚心,让他们劝说朱宸濠早日发兵东下。然后让间谍人员泄露信的内容,朱宸濠果然心中犹豫,和李士宾、刘养正商讨战事,他们都劝朱宸濠早日攻占南京,即皇帝位,朱宸濠这下越发举棋不定。十多天后刺探得知部队并没有来到,才明白是守仁把他骗了。七月一日,朱宸濠留宜春王朱拱饿据守本营,带领他的部下六万人,偷袭九江,占领南康,然后出兵长江,一直逼向安庆。
守仁听说南昌兵少就高兴起来,马上进军樟树镇,知府临江戴德孺、袁州徐琏、赣州刑殉,都指挥余恩,通判州胡尧云、彦琦,抚州郑琥、安吉淡恒,推官王烓、徐文英,知县新淦李吴,秦和李楫,万安王冕,宁都王天兴,各自带兵前来汇合,一共八万人,号称三十万。有人提出出兵援助安庆,守仁说:“不能这样,现在九江、南康已被敌军占有。我们越过南昌和敌人在江面争执,九江、南康两郡的兵力断我后路,这样将会腹背受敌,不如我们直接攻打南昌,敌人的精锐部队全出动了,防御力量一定孤单,我军刚刚会合,气势正盛,攻打南昌一定能胜。朱宸濠如果知道南昌被攻下,一定会回师解围,我们迎上去在鄱阳湖打击他,没有不胜的道理。”大家一齐说好。
七月十八日,王守仁驻兵平城,派遣伍文定为先锋,先遣奉新知县刘守诸之命袭击了敌人的伏兵。十九日夜半时分,伍文定的部队进入广润门,守兵吓得四散而逃。二十日的黎明,各路官兵用云梯、绳索登上城墙,攻克南昌,俘虏了朱拱等,宫人大多已被烧死。官兵在南昌有不少杀人、抢劫行为,守仁处斩了几十个违犯军令的官兵,赦免了从犯人员,并安定南昌乡绅和百姓,安慰劝告宗室遗留,南昌人民才又高兴起来。
过了两天,守仁派伍文定、刑殉、徐琏、德孺各领精兵分路前进,让尧云等将领途中埋伏。朱宸濠果然从安庆撤兵而回,两军于二十四日在黄家渡相遇。伍文定的部队抵挡敌人的前锋,朱宸濠的部队以为好欺负便迅速进攻。刑殉部队从敌人后面绕出夹击,文定、余恩追击敌人,徐琏、德孺分两路进攻,分散敌人的力量,尧云等人率领的伏兵又发起进攻,敌人于是溃败,退而防守八字脑。宸濠害怕了,发动九江、南昌的全部兵力。守仁于是派知府抚州陈槐、饶州林城攻取九江;违昌曾玙,广信周朝佐攻取南康。二十五日又发生一次战斗,官军退却,守仁把先退缩的士兵杀了,于是各路兵马拼死前进,敌人又一次大败,退保樵舍,把战船连在一起组成方阵。又拿出全部金银财宝犒赏将士。第二天清晨,宸濠正在会见群臣,官军覆压而来,用小船装着柴草,顺着风势放火,烧坏了宸濠用的副舰,宸濠的妃子除娄氏以外都投水而死。宸濠的坐船搁浅,仓促之中换了一条小船逃跑,王冕部下的士兵追上去逮捕了他。士宾、养正及投降的按察使杨璋都被活捉。南康、九江也打下来了。前后汉三十五天就平定了宸濠的叛乱。当初,京城里得知叛乱事发,朝廷里大臣们都感到震惊和恐惧。王琼扬言说;“王伯安驻兵南昌上游,一定会活捉朱宸濠的。”到此时,果然得到上报的胜利消息。
武宗皇帝当时已经亲自出征,自称威武大将军,率领京郊勇悍的军队数万人南下作战。任命安边伯许泰为副将军。和提督军务的太监张忠、平贼将军左都督刘晖率领京兵数千人沿江而上,抵达南昌。这些得到武宗宠爱的小人们原本是和朱宸濠互通声气的。守仁最初报告宸濠造反的上书中有这样的话:“图谋篡位的不只是一个宁王,请罢黜那些奸人和从谀之臣以挽回天下英雄豪杰不能安分的心思。”因此这些小人都对守仁心生忌恨。宸濠叛乱平定以后,就一起来嫉妒守仁的功劳。又因为怕守仁见到皇帝时揭发他们的罪证,所以争着制造诽谤的言语,说守仁原先曾和宸濠往来策划造反,后来考虑到叛乱不能成功,不得已才起兵镇压叛乱。后来又想要让守仁把宸濠假装释放在鄱阳湖中,好让武宗自己擒拿他。