The towering Serbian striker was dropped by Lee Clark from City's matchday squad for last weekend's defeat to Watford following some lacklustre training sessions, returning to contention for Tuesday's goalless draw against Sheffield Wednesday.
And Zigic made his presence felt at London Road as he poked home his seventh goal of the season in the 34th minute after Bobby Olejnik could only parry Chris Burke's shot.
But Blues owed much to England goalkeeper Jack Butland after he had earlier produced a super double save to deny Tommy Rowe and Lee Tomlin.
Callum Reilly struck the crossbar shortly after Zigic's goal but Burke got a crucial second 10 minutes from time when his strike was deflected over Olejnik, clinching a first win in four games to end resurgent Posh's four-match unbeaten run.
Just six points and six places separated the two sides at the start of the day but Birmingham have now risen to 15th, seven points clear of danger, while Peterborough have sunk back to the foot of the table.
Posh went into the game in buoyant mood following their emphatic 5-1 victory at Millwall in midweek however they were without influential midfielder George Boyd, who pulled the strings at The Den, after he joined Championship promotion chasers Hull on Thursday on a loan deal with a view to a permanent move in the summer.
There was a bright start to proceedings as Posh full-backs Rowe and Mark Little got forward with great success down either flank, with Blues giving the ball away too much for boss Clark's liking.
And it was Wade Elliott who surrendered possession in the build-up to the first real chance of the clash after 19 minutes.
Rowe burst through but was denied by a great save by Butland, who produced an even better stop to somehow tip Tomlin's follow-up effort over the crossbar.
The visitors, having been on the back foot, enjoyed a spell of pressure midway through the half although Posh keeper Olejnik remained untested, but for a routine low stop to keep out Peter Lovenkrands.
But that all changed in the 34th minute as Birmingham broke the deadlock.
Burke cut inside off the right and unleashed a shot which Olejnik could only parry and Zigic was there to prod home.
Reilly almost made 2-0 soon after but his 25-yard strike rebounded off the crossbar, before Lovenkrands saw his poked effort fly narrowly the wrong side of a post as Blues went on to dominate proceedings.
Peterborough started the second half brightly and saw two penalty appeals waved away, either side of a poor header from Lovenkrands at the other end.
Dwight Gayle sent a half-chance off target just after the hour mark, with neither goalkeeper forced to make a real save of note in the second half until Butland collected Tomlin's 68th-minute header.
Burke found the side-netting for Birmingham but that was a precursor to his 80th-minute strike from 20 yards, which took a huge deflection to beat Olejnik.
The visitors wasted further chances to strengthen their lead but, nevertheless, still sealed a first-ever league double over Peterborough in what was only the 14th meeting between the two clubs, with Posh now winless in the fixture in eight attempts stretching back to 1993.