四年二月,王莽再遣王匡、国将哀章率军东攻赤眉。是时,赤眉军已占有今山东、江苏、安徽、河南交界的广大地区,兵力达数十万之众,与日益壮大的绿林军相互呼应,构成对王莽政权的极大威胁。四月,王莽为对付迅速发展起来的绿林军,被迫抽调王寻等率大军南下。赤眉军继续活动在东方广大地区。同年六月,以绿林军为主体的汉更始军在昆阳大败莽军42万(参见昆阳之战),从根本上动摇了王莽政权。
九月,更始军破洛阳、占长安(今陕西西安市西北),推翻王莽政权。更始帝刘玄迁都洛阳之际,赤眉军正活跃在濮阳一带。樊崇亲赴洛阳,欲与更始合作,但受到刘玄的歧视与排斥,几十万大军未得到妥善安置。樊崇乘刘玄迁都长安之机,潜回军营。为解决粮食补给,赤眉军进入颍川后,兵分两路:一路由樊崇、逄安率领攻占长社(今河南长葛东北)、南下宛县(今河南南阳市);一部由徐宣、谢禄等率领,攻拔阳翟(今河南禹州),西至梁县(今河南临汝西南),击杀了更始河南太守。
赤眉军虽接连获胜,但因缺乏明确的斗争目标,士卒大多疲惫厌战,意欲东归乡里。樊崇等赤眉军将帅,不满刘玄所为,又恐东归后,大军自散,遂决策西攻长安,以求新的发展。赤眉军分兵两路,分别从武关(今陕西丹凤东南)和陆浑关(今河南宜阳东南)向关中进军。次年正月两路会师,在弘农(今河南灵宝东北)连败更始军。六月,赤眉军进抵华阴(今陕西华阴东),立刘盆子为帝,建元建世。九月攻破长安,推翻更始政权。
赤眉军虽有百万之众,但所面临的形势却十分严峻。刘秀乘赤眉进攻长安之机,遣兵攻占洛阳,切断了赤眉与东方的联络。南阳(郡治宛县,今河南南阳市)、汉中(郡治西城,今陕西安康西北)的更始势力王常、刘嘉扼住了赤眉向东南发展的道路;西北有隗嚣据天水(郡治平襄,今甘肃通渭西北)、刘秀部将邓禹据枸邑(今陕西旬邑东北),使赤眉军无法向西北发展;加之关中屡遭战乱,人民饥馑,地方豪强隐粮聚众,坚壁抗拒。
赤眉大军实际上困处长安,四面受敌。在这种形势下,赤眉军领导者未能采取任何积极措施,反而论功争赏,以至在推翻更始帝刘玄仅四个月后,因粮食补给困难,不得不暂弃长安,向陇(今甘肃庄浪东南)就食。建武二年九月,又因隗