He later spent loan spells at Roma and Fiorentina, before signing with the latter club permanently in 2016; he was subsequently named the team's captain in 2017.
Astori made his international debut for Italy in 2011 and represented his country on 14 occasions, scoring one goal, which came in the 2013 FIFA Confederations Cup third place play off, where he won a bronze medal.
Born and raised in the province of Bergamo, Astori started playing football with local team Pontisola before joining AC Milan in 2001.
[6] Astori later reflected on his development, saying: "After a year of courtship, of auditions, I came to wear the AC Milan shirt with the very young regional players.
Honestly, it is difficult to get out of balance, because in fifty professional clubs there are twenty boys for each team in the youth sector, so every word is illusory.
[26] Since the start of the 2010–11 season, Astori continued to regain his first team place in the centre–back position, forming a partnership with Michele Canini.
[30] This lasted until Astori was suspended for the second time for picking another five yellow cards and served a suspension against Napoli on 20 March 2011.
[31] After serving a one match suspension, Astori returned to the starting line–up against Genoa on 3 April 2011 and helped the side keep a clean sheet, in a 1–0 win.
[33] In the last game of the season against Parma, Astori set up the equalising goal, in a 1–1 draw to end Cagliari's four match losing streak.
[37] However, he suffered a fractured foot in a match against Napoli on 23 October 2011 following an intervention by Ezequiel Lavezzi and have to come off on the 21 minutes in a 0–0 draw.
[47] Astori explained turning down a move to Spartak Moscow because he wanted to stay at Cagliari and achieve his goals with the club.
[68] Astori made his Roma debut in the opening game of the season against Fiorentina and helped the side keep a clean sheet, in a 2–0 win.
[69] Two weeks later on 17 September 2014, he made his UEFA Champions League debut, starting the whole game, in a 5–1 win against CSKA Moscow.
[77] Having helped Roma finish in second place to qualify for the UEFA Champions League next season, Astori made 30 total appearances during his time at the Stadio Olimpico, and scoring once in all competitions.
[82] He made his Fiorentina debut on 23 August in the 2–0 victory against AC Milan, coming on as a substitute for Facundo Roncaglia in the 59th minute.
[98] Astori then played an important role in the UEFA Europa League, setting up two goals for Fiorentina that saw the club progress to the knockout stage.
[102] Despite being suspended on two occasions later in the 2016–17 season, including a second bookable offence against Palermo on 30 April 2017,[103] Astori went on to make forty appearances and scoring two times in all competitions.
[111] On 25 February 2018, Astori made his final appearance for the club, playing the full match in a 1–0 home win over Chievo; six minutes into the match, Astori made a run forward, joining the attack, and passed the ball to Cristiano Biraghi, who scored the only goal with a long-range shot.
[113] Astori received his first call-up for the senior team under newly appointed coach Cesare Prandelli who named him in the squad for a friendly against Ivory Coast, to be played on 10 August 2010;[114] however, he was left on the bench as an unused substitute.
He came on as a 17th-minute substitute for the injured Giorgio Chiellini but was sent off with 15 minutes remaining in the second half after receiving two yellow cards.
[124] On 30 June 2013, Astori scored the opener against Uruguay in the third-place match after knocking in the rebound from Alessandro Diamanti's free kick, as Italy won 3–2 on penalties to win the bronze-medal, following a 2–2 draw after extra time;[2][113][125] this was his only international goal, and he became the first Cagliari player to score for Italy since Luigi Riva had done so 40 years earlier, in a 2–0 victory over Switzerland on 20 October 1973.
[126][127] A year later in September 2014, Astori was called up to the national team and earned his eighth international cap, in a 1–1 draw against Netherlands.
[128] Three years later on 5 September 2017, he played his last international match for Italy, starting the whole game and helped the national side keep a clean sheet, in a 1–0 victory over Israel.
[113] Astori was a tall, consistent, tenacious, attentive, and physically strong left-footed central defender, with good aerial ability and heading accuracy, which made him a goal threat on offensive set pieces; although he was not the quickest defender, he also possessed good leadership qualities, positional sense, organisational skills, distribution, and technique, which enabled him to play the ball out or start attacking plays from the back.
[144] On 4 March 2018, Astori died in his sleep while staying in a hotel in Udine prior to Fiorentina's match against Udinese, proven to be caused by cardiac arrest determined from an autopsy conducted two days later.
[145] A club statement said "Fiorentina are profoundly shaken and forced to announce that their captain Davide Astori has died.
[156] Fiorentina's next home game against Benevento, on 11 March, was paused for 60 seconds at the 13 minute mark in his honour, while children from both teams entered wearing Astori's jersey to pay tribute to him; Fiorentina won the match 1–0, with the only goal coming from Vitor Hugo, who celebrated after scoring by saluting a T-shirt bearing Astori's image.
[163] In April 2019 it was reported that Astori's contract would be renewed for life with all the money going to his wife and child,[164] but it was later revealed to be a hoax.
[166] On 2 April 2021, Giorgio Galanti, a former Fiorentina sports consultant, was put on trial for culpable homicide in Astori's death.
[167] On 3 May 2021, Galanti was given a one-year suspended jail sentence, and ordered to pay provisional compensation for damages in the total amount of €1,090,000, of which €250,000 is paid to Astori's partner Francesca Fioretti, €240,000 to his daughter Vittoria, and the remaining €600,000 to his parents Renato and Giovanna, and his brothers Marco and Bruno.