346年晋穆帝时，桓温讨伐成汉（成汉于338年为李寿篡位，改国号为汉），次年讨灭，声威大震，遭到世族忌妒，执政司马昱引殷浩抗衡桓温。349年石虎死，晋廷派褚裒北伐，失败。桓温多次请求北伐，晋廷不许，派殷浩负责北伐。352年殷浩联合羌将姚襄讨伐前秦，被苻健击败。次年殷浩再度北伐，为姚襄所袭。354年，晋廷无奈派桓温掌握北伐大权。桓温先后发动三次北伐，同年2月伐前秦，苻健採用坚壁清野战术，打败晋军，桓温缺粮撤退。356年，桓温击溃河南姚襄，收复洛阳，修谒皇陵。358年他建议迁都洛阳，遭到世族反对作罢。晋哀帝