公元前 156年,景帝即位,任命周亚夫为车骑将军。此时,刘邦分封的同姓藩王势力越来越强,呈半割据状态,威胁中央政权。景帝采纳晁错建议,开始削藩。吴王刘濞联络楚王刘戊等六名藩王,图谋反叛。景帝三年(公元前 154年)一月,刘濞在广陵(今江苏扬州)起兵,发动武装叛乱,过淮河后,与楚军会合攻梁,攻陷棘壁(今河南永城西北),围梁都睢阳(今河南商丘南)。同时,胶西、胶东、淄川、济南、赵也起兵响应,史称“七国之乱”。梁王刘武向朝廷求救。景帝任命周亚夫为太尉(全国军政首脑),率兵抗击吴楚联军,另派郦寄、栾布分别抗击赵和齐地诸王,周亚夫向景帝提出,楚军剽悍,马上就同它决战不利,不如先不救梁,而迂回吴楚联军侧后,断其粮道,再制服它。景帝批准了他的方略。大军从灞上出发前,谋士赵涉对周亚夫说:“吴王养有许多杀手,一定会在崤山和渑池(在河南西部)之间地形险要处设伏兵、刺客。”他建议南下经蓝田(今属陕西),出武关(今陕西商南东南),绕至洛阳,可以出敌不意。周亚夫采纳他的建议。至洛阳后,搜查崤、渑之间道路,果然查出并清除了吴王的伏兵,保障了长安至洛阳间道路的通畅。周亚夫随即挥师东进,据荥阳(今属河南)。刘武派人向周求援,周亚夫率军进至梁国北面的昌邑(今山东巨野南),深沟高垒,坚守不出。刘武又多次求救,还派使臣向景帝告太尉见死不救。景帝也派人来催周亚夫出兵救梁。周亚夫仍然坚持原来的方略,不是直接救梁, 而是派骑兵迂回到吴军侧后的淮泗口 (淮河和泗水汇合处,今在洪泽湖内),断吴军粮道。直到吴楚联军在睢阳城下久攻不克,已显疲惫状态时,周亚夫才率军徐徐南下,至下邑(今安徽砀山),又筑营坚守。吴楚联军见攻不动睢阳,粮草又绝,不能持久,便冒险北上攻周亚夫的大营。周仍不应战。吴楚联军佯攻大营东南,准备突袭西北面,周识破其伎俩,命令加强西北面的防御。吴楚联军受挫南逃。周亚夫乘胜追击。刘戊自杀,刘濞带残部数千人败逃至丹徒(今江苏镇江东),被追兵全歼,刘濞为越人所杀。四月,七国之乱平定。七年,周亚夫由太尉升任丞相。由于在平定七国之乱中,周亚夫不救梁而得罪了刘武,刘武上朝常在太后面前说他的坏话,景帝也因其权重而产生猜忌。中元三年(公元前 147年),他被免除丞相职。后元元年(公元前 143年),他被诬告私买兵器谋反而下狱,绝食而死。