O'Gara started the game and from Pez's clearance Ireland lost the first lineout. They won the next one but turned over the ball to allow Kaine Robertson chase a chip ahead over the Irish line.Italy then suffered an early blow when they lost Mauricio Zaffiri to injury and when they went offside moments later O'Gara opened Ireland's account with a well struck penalty.
Italy enjoyed their best period just after that and it started with Robertson dancing away from would be Irish tackles on the right and ended with an 11th minute Ramiro Pez drop-goal.
Two minutes later when Italy went long from a line-out Simon Easterby was the recipient but was penalised for not releasing in the tackle and Pez kicked Italy into the lead.
It was a lead that didn't last very long because D'Arcy's half break released Denis Hickie who found his captain and O'Driscoll gave the scoring pass to Girvan Dempsey.
A 25th minute Pez penalty closed the gap (13-9) but after Brian O'Driscoll was penalised for holding on the Italian 22, Pez booted Italy to the Irish 22 and from the line-out Pez landed his second drop-goal. (13-12).
A 33rd minute penalty alllowed O'Gara gain a lineout inside the Italian 22 but they failed to win that and were penalised at the subsequent scrum to let Italy raise the siege. Obstruction at the next phase gave Pez the opportunity to put his side ahead but his kick from the half way drifted wide.
Then D'Arcy scored Ireland's third try although the pass from Hickie looked clearly forward but O'Gara tapped over the conversion and Ireland led 20-12.
Half-time Italy 12 -20 Ireland
Ireland: Girvan Dempsey; Shane Horgan, Brian O'Driscoll capt, Gordon D'Arcy, Denis Hickie; Ronan O'Gara, Peter Stringer; Marcus Horan, Rory Best, John Hayes; Donncha O'Callaghan, Mick O'Driscoll; Simon Easterby, David Wallace, Denis Leamy.
Italy: Roland De Marigny; Kaine Robertson, Ezio Galon, Mirco Bergamasco, Matteo Pratichetti; Ramiro Pez, Alessandro Troncon; Salvatore Perugini, Carlo Festuccia, Carlos Nieto; Santiago Dellapè, Marco Bortolami;Alessandro Zanni, Maurizio Zaffiri (Josh Sole 2 mins), Sergio Parisse.
Referee: Jonathan Kaplan (South Africa).