王莽末年,天下连年闹蝗灾。盗贼蜂起。地皇三年,南阳发生饥荒,各家的宾客大多去偷盗抢劫。光武为逃避官吏便躲到新野,顺便在宛城出售粮食。宛人李通等人用图谶煽动光武说:“刘氏复兴,李氏为辅。”光武起初不敢答应,然后暗自思量哥哥伯升一向结交无业游民,他必将发动起义,况且王莽败亡的征兆已经明显,天下正在动荡,于是同李通等人定下大计,从此就开始购置兵刃弩箭。十月,与李通从弟李轶等起兵于宛城,当时他二十八岁。
十一月,有彗星出现在张星星区。光武于是率领宾客回到舂陵。当时伯升已经聚众起兵。刚开始,各家子弟十分恐惧,都逃散躲藏起来,说:“伯升要害我们。”等到看见光武身着武将的绛衣大冠,都吃惊地说:“谨慎厚道的人也干这种事吗?”这才稍微心安了一些。伯升于是请来新市军和平林军,同他们的主帅王凤、陈牧一道向西进攻长聚。光武刚开始骑牛,杀死新野尉后才得以骑马,占领并屠戮了唐子乡,又杀死了湖阳尉。军中瓜分财物不均,众人愤恨不平,纷纷想反攻刘姓各部。光武收敛起宗族成员所得到的财物,全部给了他们,众人才开始喜悦起来。进占棘阳后,与王莽前队大夫甄阜、属正梁丘赐交战于小长安,汉军被打得落花流水,便退守棘阳。
更始元年正月初一,汉军重又与甄阜、梁丘赐交战于沘水西岸,大败敌军,斩杀了甄阜、梁丘赐二人。伯升又在淯阳击败王莽的纳言将军严尤和秩宗将军陈茂,进而包围了宛城。二月初一,拥立刘圣公为天子,以伯升为大司徒,光武为太常偏将军。三月,光武又另与一些将领征讨昆阳、定陵、郾等地,全都攻占下来,缴获大批的牛马和财物,数十万斛粮食,转运到了宛城城下,王莽获悉甄阜、梁丘赐战死,汉帝已经登基,心中十分恐惧。派遣大司徒王寻、大司空王邑统兵百万,可以作战的士兵为四十二万人。五月,抵达颍川,又和严尤、陈茂会合。早些时候,光武曾替舂陵侯家向严尤申诉拖欠租赋的事,严尤召见后,很欣赏他的风度。到现在,汉军城中出来投降严尤的人说光武不掠夺财物,只是筹划军事策略。严尤笑道:“是那位须眉俊美的人吗?他怎么竟做这种事呢!”
汉光武帝刚开始时,王莽征调天下精通兵法的六十三家学派中的数百人,一并任用为军吏;又选拔并训练卫兵,招募猛士,组成庞大的军队开赴战场,各种军旗和军用物资在千里大道上络绎不绝。当时军中有一个巨人叫巨无霸,身高一丈,腰宽十围,任命为垒尉;又驱赶各种如虎、豹、犀牛、大象之类猛兽,以助军威。自秦汉以来,出征的军队如此声势浩大,还从未有过。光武率领数千名士兵,到阳关巡逻。众将领看到王寻、王邑军容盛大,转而顺原路撤退,奔回昆阳城,全都心惊胆战,忧虑后方的妻子儿女,想分别返回各自原来驻守的城池。
光武建议道:“现在士兵和军粮都很少,而外敌强大,合力抵抗他们,或许可以立功;如果力量分散,势必全都难以保全性命。而且宛城尚未夺取,主力不能前来救援,昆阳一旦被攻破,一日之间,各部也将被消灭,今天大家不同心协力共同谋取功名,反而要去守护各自的妻子儿女和财物吗?”众将发怒道:“刘将军怎敢这样说话!”光武笑着起身走了。恰巧这时侦察的骑兵回来,说王莽大军将进抵城北,军队绵延数百里,也看不见尾。众将领窘迫地相互商量说:“还是重新请刘将军来商量对策吧。”光武再度剖析成败得失。众将军忧虑窘迫,都同声称是。
当时城中只有八九千人,光武便让成国上公王凤、廷尉大将军王常留守昆阳,晚上,自己同骠骑大将军宗佻、五威将军李轶等十三人骑马,出昆阳城南门,到外地调集兵马。这时王莽军队来到城下的将近十万人,光武等人几乎不能出城。他们到了郾、定陵,调动各营所有兵马,而那些将领却贪恋钱财,想分兵留守它。光武说:“现在如果能够击败敌人,所得珍宝是已有的万倍,可以大功告成;如果被莽军打败,脑袋都没有了,还需要什么财物!”大家这才听从了他的命令。
严尤劝说王邑说:“昆阳城小但坚固,现在假冒帝王称号的人在宛城,请速派大兵前往,他们一定逃走;宛城敌人被打败了,昆阳自然降服。”王邑说:“我过去曾以虎牙将军的身份围攻翟义,因为没能将他生擒,所以受到责备。今天率领百万大军,又遇到敌人据守的城池而不能攻取,如何交待?”于是王邑围绕昆阳城设下数十道防线,建立成百座营地,树起云车高十余丈,靠近昆阳俯视城中,各类旗帜遮盖了田野,人马搅得尘埃满天,敲鼓击钲的军乐声传出数百里之远。莽军有的挖掘地道攻城,有的用冲车撞城击和用篷车攀城。大批弓箭手连续不断发射,箭如雨下,城中军民不得不背着门板而打水。王凤等人乞求投降,遭到拒绝。王寻、王邑自以为胜利已为时不远,神态十分安闲,晚上有流星坠落在王莽军营地之中,白天有云,形如山丘,从营地上空直落而下,离地一尺左右才消散开来,莽军将士全部都匍匐在地上跪拜。
六月初一,光武即与各部人马一齐出发,自己亲自率步、骑兵一千余人,在离莽军大约四五里的地方排开阵势。王寻、王邑也派兵数千人前来交战。光武冲进敌营,斩下数十名敌军首级。其他各部将士高兴地说:“刘将军平生见到小撮敌人就害怕,今天遇到强敌却勇猛无畏,真叫人奇怪!而且他还是继续在前,请让我们帮助将军!”光武再次进攻,王寻、王邑派出的军队退去,义军各部一同乘机进攻,杀死莽军数百近千人。义军连续获胜,于是继续向昆阳进军。此时伯升攻战宛城已有三天了,而光武还不知道,于是派人伪装成宛城的使者携带书信通知昆阳守军,说:“宛城的救兵即刻赶到。”却故意丢失了这封书信。王寻、王邑得知后,十分不快。
义军众将领屡战屡捷,气势更壮,无不以一当百。光武就与三千名敢死队员,从城西涉水直扑莽军的中军,王寻、王邑的阵势大乱,义军一鼓作气打垮敌军,于是杀死了王寻。昆阳守军也击鼓呐喊着冲出来,内外夹击,喊杀声惊天动地,莽军溃退,逃跑的士兵互相践踏,死尸僵卧在百余里的路上。恰逢雷声大作,狂风骤起,屋瓦全被风刮得乱飞,暴雨如注,滍水水势猛涨,吓得虎豹都四肢颤抖,士兵们争着渡河,淹死的人数以万计,河水为之断流。王邑、严尤、陈茂轻装骑马踏着死尸渡河逃走。义军全部缴获了莽军的各种军用物资,兵车、盔甲和珍宝,多得无法计算,运了几个月都没运完,有人就把剩余的物资烧掉了。
光武再接再励夺取颍阳。恰在此时,伯升被更始帝杀害,光武从父城赶回宛城请罪。伯升司徒府的属吏迎接光武并表示同情,光武不方便述说心里话,只能沉痛地引咎自责而已。他未曾自我吹嘘昆阳的功劳,又不敢为伯升服丧,吃饭说笑如同平时一样。更始因此心中有愧,便任命光武为破虏大将军、封于武信侯。
九月初三,三辅的豪杰共同杀死了王莽,将他首级送到宛城。更始帝将北上建都洛阳,以光武兼管司隶校尉事,命令他前去整修宫室和官府。于是光武任命了属吏,写好文书发到各属县,行使起督促文书,察举非法的职责,一切按照汉朝的旧规矩办事。当时三辅地区的官吏和士人到洛阳城东迎接更始帝,看见诸位将军经过,都是头上戴帻,身穿如同妇女所穿的衣裳,即诸于和绣之类,都觉得可笑,甚至有人害怕不吉利而走掉了。等到看见司隶校尉的部下,都高兴得不知如何是好,老年的官吏有的流着泪说:“不想今天还能重新看到汉朝官员的威仪!”从此有识之士都倾心于光武。
等到更始帝到达洛阳,就派光武以破虏将军的身份代理大司马事务。十月,他持节向北渡过黄河,招抚河北各州郡。所到郡县,便接见二千石、长吏、三老、官属,下至一般佐史,考察政治得失,如同州牧巡行辖区一样。他每到某地就审查释放囚徒,革除王莽苛政,恢复汉朝官吏的名称。吏民欢欣鼓舞,争着带上牛肉和酒,迎接慰劳光武一行人。进入邯郸,原赵缪王之子刘林劝说光武道:“赤眉军现在在河东,只要决堤放水淹他们,百万赤眉军全成为鱼。”光武不理睬,又前往真定。刘林于是诡称卜者王郎是成帝的儿子刘子舆。在十二月,拥立王郎为天子,建都邯郸,并派遣使者劝降了许多郡国。
二年正月,光武看到王郎一兴起就比较强大,于是向北攻取蓟县。王郎下达快递文书,悬赏十万户侯捉拿光武。而原广阳王之子刘接于蓟城中起义,以响应王郎。城内很混乱,谣言四起,人人惊恐,说邯郸使者刚刚到达,二千石以下官吏都前去迎接。于是光武急忙驱车南逃,无论白天黑夜都不敢进入城市,吃住全在道路旁。到达饶阳,部下全断了炊。光武就自称是邯郸使者,进入传舍。传舍的官吏刚送进食物,光武的随从因为饥饿,纷纷争抢食物。传吏怀疑他们是伪装的使者,就击鼓数十下,假称邯郸的将军来到,光武的部下都大惊失色。光武上车想逃,但是害怕出不去,慢慢回到座位,说:“请邯郸的将军进来。”过了许久他才驾车离去。传舍中的人远远地呼叫守护城门的人关闭大门。门长说:“天下形势还难预料,而能随便关闭长者吗?”于是光武得以从南门离去。
他们日夜兼程,冒着霜雪,天气正寒冷,脸都冻裂了。到了呼沱河,没有船只,恰好碰上河水结冰,得以通过,还没全部过完但后面的几辆车陷入河中,他们进入下博县城西,彷徨犹豫不知该向何方。有一个白衣老人在路边,指点他们说:“努力!信都郡仍忠于刘玄,离这里八十里。”光武立即奔赴信都,信都太守任光开门出迎。世祖因此征集附近各县的兵卒,得到四千人。先攻打堂阳、贳县,二城全都降服。王莽和成卒正邳彤也率全郡归降。又昌城人刘植、宋子人耿纯,各领宗亲子弟,占领各自的县城,以拥护光武。先帝于是北上迫降下曲阳,兵马初步集结,乐意投靠的人达到数万人。接着向北进攻中山,夺取卢奴。他所过之处调发“奔命”兵,向周围各郡传递文书,要求共同打击邯郸势力,郡县又再次响应号召。他又南下进攻新市、真定、元氏、防子,都一一占领下来,因此进入赵国地界。
当时王郎大将李育驻扎在柏人,汉兵不了解情况而进军,前部偏将军朱浮、邓禹被李育打败,丧失了辎重。光武在后面听说此事,收容了朱浮、邓禹的溃散的士兵,与李育大战于柏人的外城城门,大获全胜,全部夺回了被李育缴获的物资。李育退守城池,光武攻不下,就率军夺取广阿。恰好上谷太守耿况、渔阳太守彭宠各派他们的将领吴汉、寇恂等人统帅骑兵来协助攻打王郎,更始帝也派遣尚书仆射谢躬讨伐王郎,光武因而大肆慰劳士兵,于是东进围困钜鹿。王郎守将王饶坚守,经过一个多月仍攻打不下。王郎派将军倪宠、刘奉领兵数万援救钜鹿,光武迎战于南栾,斩杀数千人。四月,先帝围攻邯郸,屡战屡胜。五月初一,先帝攻取邯郸,处死王郎。收缴文书,得到自己部下向王郎联络或诽谤自己的信件数千封。光武不查看,集合众将领当面把信烧掉,说:“我只是让为此事担扰的人心安。”
更始帝派侍御史持节封光武为萧王,命令他遣散军队回到更始帝身边。光武以河北地区尚未平定作为理由推辞,不应征召,从此开始脱离更始帝。
那时长安政治混乱,四方叛离。梁王刘永专命于睢阳,公孙述称王于巴、蜀,李宪自立为淮南王,秦丰自号楚黎王,张步起义于琅邪,董宪起义于东海,延岑起义于汉中,田戎起事于夷陵,都各自任命将帅,侵占郡县。又有各种名号的贼兵如铜马、大肜、高湖、重连、铁胫、大抢、尤来、上江、青犊、五校、檀乡、五幡、五楼、富平、获索等,各自率领部队,人数合计达数百万人,在当地劫掠。
光武将攻击诸寇贼,先派遣吴汉到北方征发十郡兵马。幽州牧苗曾不听从调兵,吴汉就斩杀苗曾而统治了他的部下。秋天,光武进攻铜马于鄹县,吴汉率领骑兵来到清阳会合。贼兵多次挑战,光武坚守营垒,贼兵有出外抢掠的人,就发兵消灭他们,断绝了贼兵的粮道。过了一个多月余,贼兵粮食吃光,乘夜色逃去,光武追击到馆陶,大败贼军。接受投降一事尚未结束,而高湖、重连军从东南方前来,与铜马残部会合,光武又与他们在蒲阳大战,全部打败并降服了他们,封他们首领为列侯。俘虏们仍然心中不安,光武懂得他们的心意,命令他们各自回营整顿队伍,于是自己轻装骑马一一巡视各部队列。俘虏们互相说道:“萧王以赤心待我们,我们怎能不以死报效呢!”从此他们都顺服。光武把俘虏们全部分配给各位将领,士兵于是多达数十万,因而关西称光武为“铜马帝”。赤眉一个别帅与大肜、青犊军共十万人驻扎射犬,光武进击,打败他们,各军全都逃散。先帝又派吴汉、岑彭袭杀谢躬于邺城。
青犊、赤眉贼开进函谷关,进攻更始帝。光武就派遣邓禹率领六员副将引兵向西进军,以利用更始、赤眉相争的动乱时机。当时更始帝派大司马朱鲔、舞阴王李轶等屯守洛阳,光武也命令冯异据守孟津予以抗衡。
建武元年春正月,平陵人方望拥立原来的孺子刘婴为天子,更始帝派遣丞相李松进攻并杀了他们。光武帝北上进攻尤来、大抢、五幡军于元氏,追击到右北平,连续打败他们。又战于顺水之北,乘胜追击,反而被打败。贼兵追击得很紧,短兵相接,光武自己从山坡上跳下去,遇到突骑王丰,王丰下马让给光武,光武扶着王丰的肩膀上马,回过头来笑着对耿弇说:“几乎被敌人耻笑!”耿弇频频射箭击退贼兵,才得以逃脱。光武的士兵死了数千人,撤兵回来后退守范阳。军中不见光武,有人说他已战死,众将不知如何是好。吴汉说:“大家努力!萧王哥哥的儿子在南阳,别担心没有主公?”众人恐惧,几天以后才安定下来。贼兵虽然取胜,但平时折服于汉军军威,客主双方互不摸底,晚上就撤走了。大军重又前进到安次,与敌交锋,击败他们,斩首三千余人。贼兵退入渔阳,于是派遣吴汉率领耿弇、陈俊、马武等十二位将军追击于潞县之东,一直进抵平谷,大败并消灭了贼军。
朱鲔派遣讨伐将军苏茂进攻温县,冯异、寇恂与他们交锋,大败敌军,斩杀苏茂的将领贾强。于是众将商议给光武上尊号,马武先向光武进言:“天下无主。如果有圣人利用天下凋敝的时候崛起,我们就算有仲尼为相,孙子为将,也恐怕难有作为。覆水难收,后悔莫及。大王虽然执意谦让,叫宗庙社稷怎么办!应该返回蓟县登基,再商议征伐的事情。否则现在能说谁是逆贼而放手攻打他们呢?”光武震惊地说:“将军为何说出这样的话?该斩首了!”马武说:“众将领都这样说。”光武让他出去劝说众将。于是光武引军回到蓟县。