© PA Photos
It was the home side that saw the better of the play in the first half, dominating in the scrum and at the lineouts, but they were unable to add a try before half time.
Ireland were down to 14 men for a spell in the opening 40 minutes, with Brian O'Driscoll sent to the sin bin for stamping on Simone Favaro.
Italy started the second half well, setting Giovanbattista Venditti up for a try following a lengthy buildup.
Ireland found themselves down to 13 men for a time as Donnacha Ryan and Conor Murray were both sent to the sin bin inside the final 10 minutes, allowing Luciano Orquera to add a further six points and secure Italy's first ever win over Ireland in the Six Nations.