Kieran Agard's first-half brace secured table-topping Bristol City three points over second-placed MK Dons as the Robins continued their unbeaten run in League One.
The visitors started well and Benik Afobe may have thought he had scored, but his strike was turned away by Frank Fielding.
Steve Cotterill's men made the early breakthrough after Agard received the ball from Mark Little before firing his effort past a helpless David Martin in the Dons' goal.
Karl Robinson's players didn't appear too downhearted by the early setback and came close to an equaliser as Ben Reeves and Dean Bowditch were both kept out by an in-form Fielding.
With half time approaching, Agard increased City's lead from the penalty spot after the former Rotherham United forward was brought down in the area by Kyle McFadzean.
The visitors were able to pull a goal back within minutes of the restart as Bowditch finally found a way past Fielding's rearguard.
MK Dons could have been level midway through the second period when first Daniel Powell went close with an effort before Dele Alli skied a shot over the City bar.
However, their 73rd minute equaliser came after woeful defending from Wade Elliott, which allowed Afobe to slot the ball into an empty net with Fielding left stranded.
Elliott made up for his mistake within 60 seconds as he restored the home team's lead and, despite a late onslaught from MK Dons, the league leaders held on for victory.