隋朝年间为上庄,明代为上庄村,解放初期东社村有一上庄村,为与之区别故名南上庄村。
1937年,属太原县第五区。
1945年,属太原市外三区。
1947年,太原县上庄村与阳(曲)西县上庄村均归太原市管辖,为与东社乡上庄村区别更名为南上庄村。
1949年属太原市第五区。
1953年,太原市第五区划乡,划入小王乡。
1954年,属万柏林区。
1956年,随小王乡并入小井峪乡。
1957年,属太原市郊区小井峪乡。
1958年为小井峪人民公社南上庄生产大队。
1970年,属北郊区。
1984年,由生产大队改为村民委员会。
1997年撤销北郊区建制,划归万柏林区。
2007年划入长风西街街道管辖,2011年改制为南上庄社区,一直沿用至今。