1951年1月合肥市設兩個郊區,11月合并為城郊區,1952年8月分為東郊區和西郊區,1955年1月又合并為城郊區;1960年3月改為蜀山區,6月改為北市區;1963年5月改為郊區。
1996年,郊區面積330平方千米,人口約38萬人,轄1個街道7鎮4鄉:大興鎮、義城鎮、七里塘鎮、常青鎮、杏花村鎮、義興鎮、駱崗鎮、城東鄉、大圩鄉、大楊店鄉、三十崗鄉。區政府駐濉溪路20號。
1997年,撤銷大楊店鄉,設立大楊鎮,鎮政府駐大楊店。調整后,郊區轄:瑤海街道、大興鎮、義城鎮、七里塘鎮、常青鎮、杏花村鎮、義興鎮、駱崗鎮、大楊鎮、城東鄉、大圩鄉、三十崗鄉。
2000年第五次人口普查,郊區常住總人口779511人,其中:杏花村鎮111959人,七里塘鎮40559人,常青鎮167359人,大興鎮36240人,大楊鎮25385人,駱崗鎮72925人,義興鎮35001人,義城鎮24729人,城東鄉73490人,大圩鄉22572人,三十崗鄉11761人,新站開發區30540人,高新區97956人,經濟技術開發區35035人。(注:瑤海街道由新站開發區管轄)
2002年3月6日,根據國務院國函[2002]10號批復和省政府皖政秘[2002]13號文件精神,合肥市行政區劃開始調整。其中:郊區更名為包河區。包河區轄原郊區的大圩1個鄉,義興、義城、駱崗、常青4個鎮。從原西市區劃入巢湖路、蕪湖路、寧國路3個街道。原西市區稻香村、南七里站街道金寨路以東區域與原郊區常青鎮金寨路以東區域合并,由常青鎮政府管轄,鎮政府駐地不變。原郊區城東鄉分路口、周谷堆、五里廟3個村劃歸包河區駱崗鎮管轄。調整后,包河區轄大圩1個鄉,義興、義城、駱崗、常青4個鎮,巢湖路、蕪湖路、寧國路3個街道。面積230.70平方千米,人口33.44萬人,其中非農業人口22.05萬人。區人民政府駐地暫駐濉溪路118號(原郊區人民政府駐地)。2002年底,包河區轄3個街道、4個鎮、1個鄉:巢湖路街道、寧國路街道、蕪湖路街道、義城鎮、常青鎮、義興鎮、駱崗鎮、大圩鄉。
2004年,撤銷駱崗鎮,設立駱崗街道。調整后,包河區轄5個街道、2個鎮、1個鄉:常青街道、寧國路街道、蕪湖路街道、巢湖路街道、駱崗街道、義興鎮、義城鎮、大圩鄉。
2006年,安徽省民政廳《關于同意將肥西縣煙墩鄉整建制劃歸合肥市包河區管轄的批復》(民地字[2006]71號):同意將肥西縣煙墩鄉劃歸合肥市包河區管轄。包河區轄5個街道、2個鎮、2個鄉:巢湖路街道、寧國路街道、蕪湖路街道、常青街道、駱崗街道、義城鎮、義興鎮、大圩鄉、煙墩鄉。
2007年4月,合肥市對包河區行政區劃進行調整:撤銷2個街道、2個鄉,新設2個街道、2個鎮,并調整了3個街道的管轄范圍。即撤銷巢湖路、寧國路2個街道;調整蕪湖路、駱崗、常青街道等3個管轄范圍;新設立了包公街道、望湖路街道;調整義興鎮行政區域并將其更名為淝河鎮;撤銷大圩鄉、煙墩鄉,分別設立大圩鎮、煙墩鎮;保持義城鎮行政區劃不變。
2008年9月,經省政府同意,省民政廳作出批復,合肥市撤銷包河區煙墩鎮、義城鎮,設立煙墩街道、義城街道。新設立的兩個街道為包河區政府的派出機構,面積、人口不變。煙墩街道辦事處駐原煙墩鎮政府駐地;義城街道辦事處駐原義城鎮政府駐地(2009年10月28日正式撤鎮改設街道)。
2010年第六次人口普查,包河區常住總人口817686人,其中:駱崗街道75955人,常青街道105575人,蕪湖路街道133130人,包公街道105122人,望湖街道179924人,義城街道30329人,煙墩街道88075人,淝河鎮78565人,大圩鎮21011人。