1368年正月,朱元璋在应天府,也就是今天的南京,正式称帝。关于新王朝的都城选址,群臣们纷纷建言,希望能将都城设在中原心脏地带,而朱元璋的思绪却首先飘向了北宋的故都汴梁,也就是今天的开封。洪武元年五月,他亲自前往汴梁考察,郑重其事地表示:急至汴梁,目的就是为了选定都城,以安定天下。回到应天府后,他正式宣布,应天府定名南京,开封则称北京。待徐达等大将攻克元朝旧都大都后,朱元璋又一次亲赴开封,这显示了他对这座历史名城的重视与关注。
然而,开封最终未能成为明代的首都。这里既没有进行系统的都城建设,也未设立正式行宫。原因在于,朱元璋经过两次实地考察后,亲眼见到开封民生凋敝,水陆交通转运困难重重,漕运早已不如唐宋时期那般畅达,于是他果断放弃了在此建都的计划。但为了巩固北方、稳定中原,他仍然需要一个象征性的陪都,开封便被赋予了北京(陪都)的名号,持续十年之久。朱元璋由于出身与政治策略的原因,一直注重掌控江淮地区,依赖江南的人力与财力,于是洪武二年,他最终决定在家乡临濠,也就是凤阳,建立都城。在此前的群臣议事中,历代王朝的都城——长安、洛阳、开封、应天府——都被拿出来一一比较。而元朝旧都大都(即今北京)始终未入朱元璋法眼,很大程度上是因为他的视线仍然集中在江淮和江南地区,对于北方的经营并未作为重点。直到洪武八年,他才再次把关注点转向南京,洪武十一年,正式取消开封作为北京的地位,确认南京为京师,同时将凤阳定为陪都。 北方建都的重任,最终落在了朱棣身上。靖难之役中,朱棣率兵直捣南京,通过武力夺得皇位。永乐元年(1403),他宣布以北平为北京,称行在,初步将北京设为陪都。到了永乐四年(1406),他正式启动建都准备,诏建北京宫殿,派遣大批官员奔赴全国各地采购木材等建筑材料。在此期间,朱棣三度亲临北京:第一次是永乐六年(1408),两年后返回南京;第二次是永乐十二年(1414),为征讨瓦剌而经过北京,次年回南京;第三次是永乐十五年(1417),这一次他再也未返回南京,而是正式宣布全面建设北京都城及紫禁城。次年,他将皇太子也迁至北京,正式确立北京为京师,将南京改称行在(陪都)。自元亡后,北京再次成为首都,中间经历了三十多年的变迁。当时,朱棣不仅把北京定为政治中心,还在京北昌平的天寿山(今十三陵)安置皇家陵寝,意在让子孙世代守护北方疆土。 长久以来,坊间流传着刘伯温设计并主持建造北京城的故事,但实际上,他并未参与北京城及紫禁城的规划建设。倒是在明朝建国前后,他主持过吴王宫和南京城的设计与营建。刘伯温在洪武四年(1371)告老还乡,洪武八年(1375)便去世于青田老家。而朱棣开始营建北京是在1406年,自然无法与他交集。之所以流传这一传说,很大程度上源于朱元璋在攻占南京后,命刘伯温主持南京宫殿的营建,命刘基等卜地作新宫于钟山之阳,从而引发了刘伯温建北京的误解。尽管北京的建设发生在他去世多年后,刘伯温确实曾主张以北京为国都,并对其政治、地理、历史与文化价值进行了详尽分析。他认为,元朝选择北京为都城,正是看中了地形之强实甲天下,东连沧海,西接晋冀,前有潴大陆之利,北有重关天险之固。即便在元末民变四起之时,大都仍能安然无恙。刘伯温甚至断言,如果元顺帝未弃城而逃,而是重兵驻守,与徐达、常遇春的明军相抗衡,岁月之间,成败利钝,未知其孰而得失也。在建都北京的问题上,他的见解显然高于朱元璋。尽管刘伯温的分析是针对元代,但其地理与战略判断同样适用于明代。在永乐年间之后的二百多年里,北京作为首都的选择,正如他预言般得以实现。