1945年8月,上海市仍为战前17个区和特别区。1947年上海市面积617.95平方公里。1948年12月上海市划分为30个区。1949年5月27日上海解放。1949年5月上海解放后,成立上海市人民政府,设黄浦、老闸、邑庙、蓬莱、嵩山、卢湾、常熟、徐汇、长宁、普陀、闸北、静安、新成、江宁、北站、虹口、北四川路、提篮桥、杨浦、榆林等20个区和新市、江湾、吴淞、大场、新泾、龙华、洋泾、真如、高桥等10个郊区。同时,上海的郊县划入苏南、苏北行署,后由江苏省管辖。1949年10月1日,中华人民共和国成立。上海仍为中央直辖市。上海市划分为20个市区和10个郊区。1956年经过行政调整,上海市辖区减为18个,辖15个市区和3个郊区。1958年,为了适应城市发展的需要,将江苏所属上海地区的郊县划入上海市,至此,上海市辖黄浦、邑庙、蓬莱、卢湾、徐汇、长宁、普陀、闸北、新成、江宁、虹口、提篮桥、杨浦、榆林等14个区,浦东、嘉定、宝山、上海、崇明、松江、奉贤、南汇、青浦、川沙和金山等11个县,总面积达6340.5平方公里,比建国初大十倍以上。1960年1月,撤消邑庙、蓬莱设立南市区,有12个区和11个县。1960年3月,浙江省舟山县嵊泗人民公社划属上海市。1961年上海市辖12区、10县。1962年嵊泗又划归浙江省。1964年,撤消闵行区与吴淞区,此后上海保持了10个区和10个县不变达10余年之久。文化大革命结束后,1980、1981两年,再置吴淞区与闵行区。1988年,撤消吴淞区和宝山县改为宝山区。1992年,撤消嘉定县,设立嘉定区。为进一步改革开放,1993年撤消川沙县,将其境域与黄浦、杨浦、南市的浦东地区和闵行的三林乡合并设立浦东新区。同年,撤消上海县和闵行区,组建新的闵行区。1995年,上海市辖浦东新区、徐汇、长宁、普陀、闸北、虹口、杨浦、黄浦、南市、卢湾、静安、宝山、闵行、嘉定等14区和南汇、奉贤、松江、金山、青浦、崇明等6县,有106个街道、208个镇、10个乡和3590个居民委员会、2986个行政村。面积6340.5平方公里,其中陆地面积6218.65平方公里、水面积697平方公里。20世纪末,松江县、青浦县和金山县也改为区。2000年南市区划入黄浦区。2001年1月奉贤县、南汇县撤县建区。2009年为了更好的开发浦东地区,合理配置地区经济与社会资源,综合优化总体布局,促进社会协调健康发展,撤南汇区、浦东新区,组建新的浦东新区。2011年6月8日,国务院正式批复上海行政区划调整,同意撤销黄浦区和卢湾区建制,组建新的黄浦区。2015年11月4日,上海市人民政府在全市干部大会上宣布,静安区与闸北区正式合并,组成新的静安区。2016年7月22日,上海市下辖的唯一一个县——崇明县撤县设区,改制为崇明区,此标志着上海市告别下辖县,全市至此形成下辖16个市辖区的新局面。1958年,为了适应城市发展的需要,将江苏所属上海地区的郊县划入上海市,至此,上海市辖黄浦、邑庙、蓬莱、卢湾、徐汇、长宁、普陀、闸北、新成、江宁、虹口、提篮桥、杨浦、榆林等14个区,浦东、嘉定、宝山、上海、崇明、松江、奉贤、南汇、青浦、川沙和金山等11个县,总面积达6340.5平方千米,比建国初大十倍以上。1960年1月,撤消邑庙、蓬莱设立南市区,有12个区和11个县。1960年3月,浙江省舟山县嵊泗人民公社划属上海市。1961年上海市辖12区、10县。1962年嵊泗又划归浙江省。1964年,撤消闵行区与吴淞区,此后上海保持了10个区和10个县不变达10余年之久。文化大革命结束后,1980、1981两年,再置吴淞区与闵行区。1988年,撤消吴淞区和宝山县改为宝山区。1992年,撤消嘉定县,设立嘉定区。为进一步改革开放,1993年撤消川沙县,将其境域与黄浦、杨浦、南市的浦东地区和闵行的三林乡合并设立浦东新区。同年,撤消上海县和闵行区,组建新的闵行区。1995年,上海市辖浦东新区、徐汇、长宁、普陀、闸北、虹口、杨浦、黄浦、南市、卢湾、静安、宝山、闵行、嘉定等14区和南汇、奉贤、松江、金山、青浦、崇明等6县,有106个街道、208个镇、10个乡和3590个居民委员会、2986个行政村。