Montolivo started his career with Atalanta in 2003 before being transferred to Fiorentina in 2005. He went to make more than 250 appearances for the club in 7 years. In 2012 he signed for Milan on a free transfer. He was given the club's captaincy the following season after the departure of Massimo Ambrosini.

Montolivo is a graduate of Atalanta. He made his debut for the club in a Serie B match against Piacenza Calcio coming as an 81st minute substitute for Michele Marcoliniego.[6] His first start match came in a 2–1 win against Hellas Verona.[7] From that match he became frequent in the starting line-up[8] and scored his first goal against AS Bari in a 2–0 win.[9] Atalanta became fifth and promoted to Serie A by playoffs. At the end of the season, Inter Milan showed interest in buying Montolivo.[10]

In summer 2005, Fiorentina signed Montolivo on co-ownership for €3.5 million.[18] He penned a five-year contract.[18] He was given number 18 jersey.[19] During the 2005–06 season, Montolivo's first-team chances were limited, partly due to the fact that he was still an inexperienced player and partly because manager Cesare Prandelli had a relatively stable and reliable squad of players at his disposal.[20] The young man's talents did not go unrecognised though. He became a fixture in Italy's under-21 team, coached by Pierluigi Casiraghi.[20] He made his debut in Fiorentina colours in a 2–1 loss against Inter Milan.[21]

Despite being associated in the Calciopoli scandal, Fiorentina signed Montolivo on a permanent basis on the following season for €2 million.[22] He played a total of 36 matches for Fiorentina, scoring in 2. He also declared that he will continue playing for the Viola.[23]

The 2007–08 season started well for the Viola midfielder; in the first match day, he was as one of the best on the field against Empoli, against which he also scored a splendid goal from a lob.[24] The season follows between ups and downs, but Montolivo confirmed himself during the course of the season as one of the best talents in Italian football.[citation needed]

His good form earned his a spot for Summer Olympics in Beijing. He sustained an injury while playing in it he missed the first round of 2008–09 Serie A against Juventus.[25] He scored a crucial brace as Fiorentina defeated Udinese Calcio 4–2 after being 0–1 down in the first half.[26] Montolivo scored 2 more goals against Sampdoria and SSC Napoli as he ended the season with 4 goals—two more than his previous season.[27] In 17 January 2009, he first time captained Fiorentina to a 1–0 defeat to AC Milan.[28]

Again, the next season started with injury for Montolivo—he had a small problem in the ankle. However, he was operated and it was remedied.[31] His form saw him included in Italian squad for 2010 FIFA World Cup.[32] He scored goals against Palermo[33] and Cesena[34] as he ended his account scoring 2 goals in 29 matches.[2]

He said in the beginning of his last season i.e. 2011–12 that he would leave Fiorentina after his contract expires. He wanted to play in a team of higher caliber.[35][36] As a result he was stripped from captainship and the armband was given to Alessandro Gamberini with Stevan Jovetic as the vice-captain.[37] He made his 200th appearance for the club in a 2–0 lose against Palermo in 27 November 2011.[38]

In May 2012, AC Milan head coach Massimiliano Allegri announced that Montolivo would join the club on a free transfer when his contract with Fiorentina expired on 30 June.[39][40] He penned a four-year contract with the club.[41] "Next season, Montolivo will arrive and he is a very talented player with great technique," said Allegri to Milan Channel.[39][42] He chose to wear the number 18 jersey which he has worn before and was last worn by Alberto Aquilani in Milan.[43]

In the Milan derby though he was highly praised for his performance, the referee discarded a stunning 30-yard volley by Montolivo due to a challenge committed by Urby Emanuelson.[44] On 30 October, Montolivo scored his first goal with Milan, coming in the 69th minute after Milan were down 2–0 to Palermo. Milan eventually drew the match 2–2, salvaging a point.[45]

On 25 November, against Juventus, a match won 1–0 by Milan, as Daniele Bonera and Massimo Ambrosini were suspended and Christian Abbiati was injured, he played his first match as Milan's captain.[46] He ended the first season at the club by becoming one of the two (other being Stephan El Shaarawy) most used players of the season.[47] On 11 June 2013, Milan Vice-President Adriano Galliani stated that Riccardo Montolivo would be the next captain for Milan, after previously announcing that current club captain Massimo Ambrosini would not be extending his contract with the Rossoneri.[48]

After getting captainship, he opened his account by scoring against Calcio Catania.[49] He then scored in a 4-3 defeat to Sassulo.[50] On 13 April 2014, Montolivo scored an astonishing long-range strike in the 23rd minute against Catania, which extended Milan's winning streak to four matches.[51] After breaking his leg in a pre-World Cup friendly against Ireland on 31 May, Montolivo was ruled out for six months and made his return in a 2-0 win over Udinese on 30 November.

Montolivo scored his first senior international goal in a 2–1 friendly win against Spain in Bari.[70] Montolivo made four appearances at UEFA Euro 2012 as Italy progressed to the final, where they lost 4–0 to Spain.[citation needed]