直至第二年九月,他才召集群臣商议都城之事。当时有几处地方在商议之中:长安、洛阳、开封(当时称北京)、北平(今北京)、临濠(今安徽凤阳)、南京。朱元璋很想在其老家临濠定都,但经大臣刘基的极力劝说后,终于改南京为京师,作为都城。
南京虽定为都城,但有三个难以补救的缺陷始终在困扰着朱元璋。一是中国的政治中心一直在北方,建都南京有偏安性质;二是元朝残余势力仍虎视中原,伺机南下,建都南京有鞭长莫及的感觉;三是大内填燕雀湖而成,地势下沉,朱元璋认为这破坏了风水,对子孙后代不利。所以,他一直想迁都。迁往何处?他心目中认为长安较好,于是在1391年特派太子朱标去三秦视察。然而,时过境迁,全国经济格局早非汉唐时代,长安过于偏西,远离富庶,漕运艰难,迁都长安客观上已不可能。朱元璋终于不得不概叹“兴废存数,只得听天”,打消了迁都意图。
1398年,朱元璋死后,他的四子朱棣从侄儿手中夺取了政权,于1420年迁都北平。这一方面与北平是朱棣发迹之地有关,但与朱元璋一直不愿定都南京也不能说没有关系。