正德十四年(1519年),宁王朱宸濠发动叛乱。据说,消息传到北京后,朝中大臣震惊不已,只有王琼却十分自信地说:“王伯安在江西,肯定会擒获叛贼。”
当时,王守仁正准备前往福建平定那里的叛乱。行至江西吉安与南昌之间的丰城,王守仁得到朱宸濠叛乱的消息,立即赶往吉安,募集义兵,发出檄文,出兵征讨。一开始,王守仁来了个疑兵之计。他深知如果宁王顺长江东下,那么南京肯定保不住。作为留都的南京丢了,叛军在政治上就会占有一定的主动,平叛就会有困难。
王守仁平定盗贼后兵符已上交兵部,手中无兵。在江西境内的朝廷官吏都来帮助守仁,又在袁州(今江西宜春)聚集各府县士兵,征调军粮、制造兵械船只。
王守仁假装传檄各地至江西勤王,在南昌到处张贴假檄迷惑宸濠,声称朝廷派了边兵和京兵共八万人,会同自己在南赣的部队以及湖广、两广的部队,号称十六万,准备进攻宁王的老巢南昌。为争取时间集结军队,又写蜡书让朱宸濠的伪相李士实、刘养正劝宸濠发兵攻打南京,又故意泄露给宸濠。此时,李、刘二人果然劝宸濠进兵南京,宸濠大疑,按兵不动。
宁王犹疑不定,等了十多天,探知朝廷根本没有派那么多的兵来,才沿江东下,攻下九江、南康(今江西星子)两城,逼近安庆。而在朱宸濠率兵六万自九江沿江而下、窥伺南京的时候,王守仁已经率领仓促组建的八万平叛军,直捣宁王的老巢——南昌,迫使朱宸濠回援。当时有人建议王守仁往救安庆,他不肯,分析说:如果救安庆,与宁王主力相持江上,而南康和九江的敌人就会乘虚攻我后背,我们腹背受敌;而我们直捣南昌,南昌守备空虚,我们的军队锐气正足,必可一举而下;宁王必定回救,到时我们迎头痛击,肯定会取胜。后来的事实果如王守仁所料。
此时守仁大军已集结完毕。宸濠精锐都前往安庆,留守南昌的兵力空虚,守仁率兵攻打南昌,宸濠回兵救南昌。最终双方在鄱阳湖决战,经过三天的激战,宁王战败被俘,宁王叛乱历时35天后宣告结束。
然而,平叛大功却没有得到武宗的认同。武宗身边的佞幸之臣,平时与宁王交往密切,心态极端复杂。一些佞幸之臣希望王守仁将朱宸濠释放,然后再让已经南巡的武宗亲自“擒获”朱宸濠,以满足武宗的虚荣心。面对这样复杂的情势,王守仁急流勇退。他将朱宸濠交付当时尚属正直的太监张永,然后称病,以避免卷入更多的政治事端中。所以,终武宗一朝,王守仁平叛之功没有得到朝廷的封赏。直到世宗即位以后,王守仁才加官晋爵。
正德十六年(1521年),明世宗即位,由藩王入继大统的世宗,在对王守仁有过短暂的赏识之后,便对这位非常能干的臣子采取了冷漠的态度。在世宗即位之际,王守仁因父老请归,世宗说王守仁有擒贼平乱之大功,正要论功行赏,不许他辞官。同年七、八月,先升其为南京兵部尚书,不许他推辞,稍后又特许他顺路回去探视父亲。不久,加封王守仁为新建伯,世袭。
嘉靖元年(1522年),父亲王华去世,王守仁回乡守制。