众人先是攻打胡陵县、方与县,秦国泗水郡的郡监平率兵包围丰邑,众人回守丰邑,两天后,刘邦出兵应战,击破秦军。于是,泗水郡的卒史周苛、周昌兄弟归顺刘邦阵营,刘邦命雍齿守卫丰邑,樊哙往东再次平定沛县,刘邦领着众人在薛县城西击败泗水郡的郡守壮,壮逃到戚县,刘邦麾下左司马擒获郡守壮,杀死了他。
刘邦所部再次进攻胡陵县,萧何与夏侯婴前去劝降镇守胡陵的泗水郡监平,平于是举城投降。刘邦回军亢父县,抵达方与县时,恰逢魏人周巿来攻打方与,双方还未交战,刘邦命曹参把守方与城,方与城转投了魏国,曹参领兵迎击。周巿又派人策反了镇守丰邑的雍齿,刘邦率军攻打,没有打下。
刘邦两次攻打丰邑没有攻下。项梁击杀景驹、秦嘉后,停驻在薛县。刘邦听说项梁在薛县,于是带着萧何、曹参、刘交等一百多名骑从,前去拜见项梁。项梁给刘邦增拨了士卒五千人,五大夫爵位的将领十个。刘邦回去后,再次领兵进攻丰邑,攻陷了该城,雍齿逃奔魏国。返回薛县后,萧何随同刘邦与项梁等人共同拥立了楚怀王。
项梁死后,楚怀王与众将约定:项羽随宋义北向救赵,刘邦率军西征,谁先攻入秦都咸阳,谁就可在关中称王。刘邦率大军兵临咸阳城,秦王子婴设计杀了奸相赵高,献出玉玺,向刘邦投降。刘邦进入秦宫,见那里的宫室、帐幕、狗马、贵重的宝物、美女数以千计,便想在此留住,经樊哙、张良一再劝谏,才下令封存宫中贵重宝物和府库,回军驻扎在霸上。