秦亡以后,刘邦与项羽之间爆发了楚汉战争。从公元前205年到公元前202年,终于在垓下决战。项羽失败,逃于乌江时,在追兵攻击下,羞见江东父老,不愿过江,自刎身亡。
在楚汉战争时,刘邦定都关中。双方在荥阳、成皋一线对峙。当时,刘邦多在洛阳指挥军事。公元前202年,刘邦登基称帝,定国号为汉,史称“西汉”。当时,关于首都所在位置的选择有两种意见,一说应在洛阳,一说应在长安。
由于文武大官中,关东人占多数,不愿离家乡太远去做官,大多主张建都在洛阳,其理由是洛阳背靠黄河,南临伊、洛,地势十分险要。周平王东迁于此,使周延续王朝数百年之久,是建都的好地方。而秦都咸阳,却使前朝二世而亡,可见建都不利。刘邦当时也倾向于建都洛阳。
在此关键时候,娄敬与张良两人的意见起了决定性作用。娄敬是山东人,当时被派戍守陇西,路过洛阳。他求见刘邦,力排众议,表达他的关于建都的意见。他主张建都关中,其意见是:武王灭商定都镐京,为控制东方殷遗民,遂建洛邑为东都。平王东迁洛邑并不是洛阳比关中有更好的条件,而是形势所逼不得不如此。洛阳虽居天下之中,但地理形势不如关中优越。关中依山伴河,四塞为固,可谓一夫当关,万夫莫开。这些意见使刘邦有所动心。
接着,张良对两地又作了分析。张良说,洛阳四面虽有山水之固,但面积狭小,土地瘠薄,打起仗来,四面受敌。而关中则不同,其西南有巴蜀的富饶,西北有广阔的后方,内部面积宽广,土地肥沃。南、北、西三面有天然屏障,东面进可攻、退可守。诸侯接受中央政权领导,通过黄河、渭河,可把东部财赋运到京师。如果诸侯反叛,则出兵顺流而下,控制东方。
在这种形势下,刘邦接受了二人意见,定都关中。
由于当时秦的首都咸阳被项羽烧毁,遂在渭水之南、龙首原西北地方兴建了新都,称其为长安。长安为西汉之首都,从公元前202年到西汉结束的公元8年,历时共210年。