Super Mario's 35-yard effort masked a poor performance from Clarence Seedorf's side. For long periods, the Rossoneri dominated possession, but struggled to create chances. Bologna failed to take advantage during a spell of dominance in the second half and will be looking over their shoulders once again at the relegation places.
The game was being played early due to Milan's upcoming Champions League game against Atletico Madrid in midweek. Kaka returned from a bout of flu to form part of the attacking trident which supported Balotelli.
The first half was a low key affair, although the Rossoneri retained the ball for long periods. Riccardo Montolivo stung Gianluca Curci's palms from the edge of the box inside the opening five minutes. A similar shot a short time later from the Milan captain was parried, with Balotelli unable to control the rebound, resulting in the frontman swinging his shot over.
Curci spilt a Balotelli free kick on the line. Fortunately for him, Cristian Zaccardo couldn't put in the rebound and the defender was then ruled offside. There was a break in play when the referee was struck in the face by the ball which produced a bloody lip.
Curci tipped another Montolivo drive wide and Lazaros Christodoulopoulos wasted a free kick for the away side in the final action of the half.
Bologna continued to stifle their hosts after the break and managed to carve out several good chances for themselves around the hour mark. Jonathan Cristaldo got ahead of the Milan defence to sweep a half volley over, before Lazaros forced Abbiati to perform a one handed save around the post from a well struck shot outside the box. Rolando Bianchi then sent a first time angled effort inches wide of the far post.
Seedorf introduced Sulley Muntari and Giampaolo Pazzini to try and shift the momentum. Bologna had their tails up and Bianchi tried his luck from by the centre circle, but Abbiati watched it sail over.
There was a late injury scare for Kaka, who needed treatment for an ankle injury after a ricochet hit the Brazilian unexpectedly.
Kaka was able to return to the field briefly and, it was from his pass that Pazzini sprung the offside trap with ten minutes left to play. The substitute got to the byline and played the ball across the face of goal, but Cesare Natali and Mikael Antonsson combined to hack the ball clear before Kaka could pounce.
From out of nowhere, Milan got their noses ahead four minutes from the end. Balotelli took a touch and casually sent a rocket of a shot into the top corner, giving Curci no chance. It was a strike worthy of being a contender for goal of the season, yet the forward barely celebrated, as a crestfallen Bologna came to terms with what just happened.
Balotelli was denied a brace in stoppage time when he blazed an ambitious free kick from distance over the bar.
AC Milan: Abbiati; De Sciglio, Rami, Zapata, Constant; De Jong, (Muntari 63) Montolivo; Honda, (Pazzini 66) Kakà, (Poli 80) Taarabt; Balotelli
Bologna: Curci; Antonsson, Natali, Mantovani; Garics, (Moscardelli 88) Lazaros, Perez, (Friberg 89) Krhin, Morleo; Bianchi, Cristaldo (Laxalt 84)
Goals: Balotelli 86 (M)