公元前195年,刘邦在长乐宫病死,同年,他的儿子刘盈即位,即为汉惠帝。刘盈即位时,只有17岁,加上生性仁弱,对母后的残忍和骄横极为不满,但又无力反抗,加过朝中大权都被太后吕雉把持了,最终忧郁成病,公元前188年,年仅23岁的刘盈病死。于是刘盈的母亲吕后立少帝,并由吕后临朝称制。四年后,少帝被废,吕后开始立恒山王刘弘为帝。
吕后临朝,极力培植吕家势力,削除刘家势力,先是杀了刘邦的儿子赵王刘友,后让自己的兄弟做了各地的藩王。吕台、吕产、吕禄及吕通都封了王,吕家势力不断壮大,刘邦“非刘不王”的限制被打破。
刘氏宗族和大臣们对吕后都深感愤慨,但都惧怕吕后的残暴而敢怒不敢言。
公元前180年七月,吕后因病去世。吕氏的诸侯王,害怕刘氏迫害,于是在同年九月,吕禄家中秘密讨论造反之事,夺取刘汉政权。这次密谋的消息传到了刘氏宗室——齐王刘襄那里,为了保卫刘氏的江山,他决定起兵讨伐诸吕。
吕禄女婿朱虚侯刘章随同东牟侯刘兴居将此事告知齐王刘襄,刘襄派使者到齐国以东的琅邪国(都城东武,今山东诸城),说吕氏发动变乱,请琅邪王赴齐都临淄面商大事。琅邪王刘泽赶往临淄却被齐王软禁。齐王刘襄随即调集军队,高举“率兵消灭不应当为王的人”的旗帜发兵西进。相国吕产派遣大将军灌婴率兵迎战。灌婴本来是汉室开国元勋,是忠于刘氏王朝的重要人物,领兵到荥阳后,安营扎寨,倒戈并派人与齐王联合,按兵不动,只等吕氏集团反叛,以率兵击之。
刘章与太尉周勃、右丞相陈平暗中联系。吕产得知齐王与灌婴联合,连忙进宫挟持太子。
在长安城里,太尉周勃、右丞相陈平等私下密谋策划,设计让上将军吕禄交出了兵权。周勃、陈平通过典掌皇帝符节的襄平侯纪通获得兵符,诈称皇帝敕命太尉统领北军。周勃进入北军军中,号令“拥戴吕氏的袒露右肩,拥戴刘氏的袒露左肩!”。大家纷纷袒露左肩,呼声震天。周勃很顺利地将北军控制,成为反吕的一支主要部队。接着,陈平再让周勃协助刘章控制南军,并严守军门。
又下令平阳侯曹窋转告禁军卫尉不准相国吕产进入殿门。周勃命令朱虚侯刘章率兵千人以进宫护卫皇帝为名,伺机捕杀了统率南军的相国吕产。后又捕杀吕禄,并分派人手去捕杀诸吕,不论老少吕氏一族不管男女老幼全部族诛。至此,吕氏集团被剿灭,统治大权又回到刘氏集团手中。
诸吕之乱平定后,周勃、陈平等大臣密商选立皇帝。刘泽假意向刘襄提出,前往长安,游说众臣立刘襄为天子,但他到了长安后却说:刘襄的舅舅驷钧不是善类,如果立了刘襄,等于又要让“吕氏当国”这剧本重演一次。大臣们非常畏惧外戚势力再度发生,经讨论,大臣们一致认为,代王刘恒适合即帝位。因为现即帝位的少帝和各位王子都不是惠帝亲生(此论现存争议),代王却是汉高祖的儿子,而且为人宽厚,待人仁慈,其母薄氏也很善良,不会出现拥尊自立的现象。最为关键的一点是代王年龄最大,全国上下无可争议。于是,周勃、陈平等人亲迎代王人长安而即帝位。闰九月,代王刘恒一行由代到长安,在群臣拥戴下即皇帝位,是为太宗孝文皇帝。刘恒即位后,大赦天下,积极推行休养生息政策,开创了汉朝盛世。
诸吕之乱的乎息,使西汉避免了一场大规模战乱。
长期以来史学界多从外戚的角度,对吕后及吕氏子弟在汉初政治中的作为进行研究,忽略了他们作为功臣的功臣一面。亦有人提出应当兼顾他们两种不同身份,从集团的角度出发,把他们置身于汉初那个特殊的时代背景中进行研究。
因平叛诸吕的日子是正月十五,所以每到是夜,汉文帝都要微服出访,与民同乐,以示纪念。在古代,“夜”同“宵”,正月又称“元月”,汉文帝就将正月十五日定为元宵节,这一夜就叫“元宵”,也叫“元夕”、“元夜”。