刘邦在秦都咸阳服徭役时见到秦始皇出游,发出了:“嗟乎,大丈夫当如此也”的感叹。单父县的门阀吕公因避仇而移居沛县,县内士绅豪杰,皆往祝贺。主吏萧何负责排定宾客的座次,要求贺礼不到一千铜钱的客人,都坐在堂下。亭长刘邦认为沛县诸官吏也没什么了不起,就自称献“贺钱一万”,其实一个铜钱都没有带来。
吕公看到刘邦后的面相后大吃一惊,觉得他将来定是个不凡人物,因此引入堂内就座。萧何告诉吕公,刘邦只会说大话,没什么成就。但吕公不以为然。刘邦坐在上宾座位后,就大声调侃其他沛县官吏。席间,吕公多次暗示刘邦散席后留下来,刘邦意会。
散席后,吕公对刘邦说,我很会看面相,但是没看过像你这么相貌不凡的,我有个女儿(即吕雉),希望你愿意接受她当你的糟糠妻。事后吕公的妻子吕媪很生气,说,你以前说你这个女儿很难得,一定要嫁个非常好的丈夫。沛县县令对你这么好,你还不肯嫁女儿,居然要把她嫁给刘邦?
吕公说,这不是你妇人家懂得的事。还是把女儿嫁给刘邦。吕公的女儿就是吕雉,后来生了汉惠帝刘盈和鲁元公主。刘邦为亭长时,经常请假回家到田里去。有一次吕雉和孩子们正在田中除草,有一老者经过讨水喝,吕雉让他喝了水,又给他饭吃。老者给吕雉相面说:“夫人乃天下贵人。”
吕雉又让他给两个孩子相面,见了刘盈,说:“夫人所以贵者,乃此男也。”又给鲁元公主相面,同样也是富贵面相。老者走后,刘邦正巧从旁边的房舍走来,吕雉就把刚才那老人给她们面相的情况告诉了刘邦。刘邦问这个人在哪,吕雉说:“未远。”于是追上了老者,问他刚才的事,老汉说:“乡者夫人婴儿皆似君,君相贵不可言。”
刘邦道谢说:“诚如父言,不敢忘德。”等到刘邦显贵的时候,却再也找不到当初那位老者。刘邦做亭长时,喜欢戴用竹皮编成的帽子,他让掌管捕盗的差役到薛地去制作。到后来显贵了,仍经常戴着。人们所说的“刘氏冠”,指的就是这种帽子。
刘邦有一次奉命押解犯人到骊山,途中有不少人逃脱,因为当时让犯人逃脱是重如死罪,所以刘邦索性放走所有人,这些人也成为后来起义的部分势力。刘邦因此必须逃亡,当时逃犯中就有十余人愿意跟随他一同逃亡,传说刘邦“斩白蛇起义”,之后入砀山。
秦始皇常说“东南有天子气,于是东游以厌之。”刘邦自疑,隐于芒、砀山泽岩石之间。折叠沛县起兵陈胜起兵,沛令恐,欲响应陈胜,萧何、曹参等劝沛令召回刘邦。沛令答应,于是派樊哙往召刘邦。刘邦至沛,而沛令反悔,于是刘邦率约百人于沛县城外射信说服城内人诛杀县令,被立为沛县令,发县中约3千子弟响应起义,攻占沛县等地。刘邦起事后,兵力达到二三千人,攻胡陵、方与,还守丰。
秦泗水监平将兵围丰,为刘邦军所破。接着刘邦命雍齿守丰,亲率军攻薛,泗水守壮战败逃到戚,不久为沛公左司马所杀。刘邦还军亢父。至方与,周市来攻方与,雍齿据丰降魏。刘邦攻丰,不能下。时东阳宁君、秦嘉在留立景驹为王,刘邦欲往投并借兵还攻丰,道遇张良。
章邯别将司马尼北定楚地,屠相,至砀。东阳宁君与沛公率军西迎击,与战萧西,不利,还聚兵于留,再攻砀,三日乃取,得兵五六千人。接着攻下邑,拔之,还军丰。时项梁在薛,刘邦率骑纵骑百余往从,项梁益刘邦卒5000人、五大夫将十人,刘邦反攻丰,拔之。
不久项梁把在外诸将召还在薛,在得知陈王确实已死的迅息后立楚怀王。项梁别号武信君,命项羽、刘邦别攻城阳。项羽、刘邦攻下城阳,然后又在濮阳之东与秦军战,破之。秦军再次聚结,守濮阳、环水,楚军离开去攻定陶,未下,即西略地至雍丘,与秦军战,大破之,沛公将曹参杀丞相李斯之子秦将李由。项羽、沛公还师攻外黄,未下。九月,项羽、刘邦攻陈留时,闻章邯破项梁军而项梁战死,刘、项还师。
吕臣军驻彭城东,项羽军驻彭城西,沛公军驻砀。秦二世二年闰九月,楚怀王徙都彭城,并收项羽、吕臣等诸军自将之。以沛公刘邦为砀郡长封武安侯,将砀郡军。项羽为长安侯,鲁公。吕臣为司徒,其父吕清为令尹。时秦军围赵甚急,赵数向楚请求救兵。楚怀王以宋义为上将军,项羽为次将,范增为末将,北上救赵。
而沛公率军西攻秦。当时秦军强,常乘胜逐北,诸将都认为西入关攻秦没有好处,都不愿去,只有项羽因为叔父之死,愿意随沛公入关攻秦。