Match ends, Atlético de Madrid 4, Milan 1.
Diego Costa kept up a record of scoring in every Champions League game he has played this season as Atletico Madrid beat AC Milan to reach the quarter-finals for the first time since 1997.
The striker, who scored the only goal of the first leg, volleyed in Koke's cross after two minutes.
Kaka's header pulled one back but Arda Turan scored with a deflected effort.
Raul Garcia headed in a third before Costa found the bottom corner from 10 yards with five minutes left.
Costa, who recently made his Spain debut, has hit seven goals in five Champions League appearances this season, and has scored 29 times in all competitions.
Having matched Real Madrid and Barcelona all season in La Liga, where they sit second, Atletico will be growing in belief that they can sustain their European campaign as well.
Diego Simeone's side have won 16 of their last 17 home matches in Europe, and few teams will relish facing them in the last eight.
The exit of seven-time winners Milan means that there will be no Italian side in the last eight of the Champions League for the first time in five years.
For all the talk of the attacking quality in Milan's starting line-up, Atletico's early energy and pressing looked like it would sweep through the visitors.
They moved ahead on the night when Michael Essien was robbed by Gabi on the touchline and Koke clipped a cross over for Costa to guide in on the volley.
Garcia turned just past the post from a Koke free-kick as the home side continued to dominate.
But gradually the Spaniards dropped deeper and Milan moved level when Andrea Poli lifted a cross to the far post and Kaka headed in.
The Brazilian should have moved his team ahead on away goals shortly after that but turned the ball wide after being picked out by a cross from on-loan QPR man Adel Taarabt.
Atletico restored their two-goal aggregate cushion when Turan's shot looped up off Adil Rami and over Christian Abbiati.
The home side looked more comfortable playing on the break after the interval - and from a Milan corner, they almost killed the tie when Costa fed Gabi and the midfielder's shot clipped the post.
Mario Balotelli had a free-kick deflected over and Robinho had an effort from a narrow angle pushed away by on-loan Chelsea goalkeeper Thibaut Courtois.
Any chance of a comeback was ended when Koke's free-kick was headed in by Atletico captain Garcia.
Costa made the scoreline even more comfortable when he latched on to a loose ball from Jose Sosa and thumped in a low cross-shot.
- 20Torres Belén
- 3Filipe Luís
- 14Fernández Arenas
- 6KokeSubstituted forRibas da Cunhaat 82'minutes
- 19Diego Costa
- 8Garcia EscuderoBooked at 4minsSubstituted forSosaat 72'minutes
- 10TuranSubstituted forRodríguezat 78'minutes
- 26Ribas da Cunha
- 15EssienSubstituted forPazziniat 69'minutes
- 13RamiBooked at 7mins
- 25BoneraBooked at 70mins
- 27TaarabtSubstituted forde Souzaat 45'minutesBooked at 74mins
- 34de JongSubstituted forMuntariat 78'minutes
- 45BalotelliBooked at 45mins
- 22Dos Santos Leite
- 2De Sciglio
- 7de Souza
- Mark Clattenburg
- Shots on Target
Second Half ends, Atlético de Madrid 4, Milan 1.
Foul by Andrea Poli (Milan).
Diego (Atlético de Madrid) wins a free kick in the attacking half.
Attempt missed. Kaká (Milan) right footed shot from outside the box is too high. Assisted by Sulley Ali Muntari.
Adil Rami (Milan) wins a free kick in the defensive half.
Foul by Diego Costa (Atlético de Madrid).
Hand ball by Giampaolo Pazzini (Milan).
Attempt missed. Giampaolo Pazzini (Milan) right footed shot from a difficult angle on the right is too high. Assisted by Sulley Ali Muntari with a through ball.
Goal! Atlético de Madrid 4, Milan 1. Diego Costa (Atlético de Madrid) right footed shot from the right side of the box to the bottom left corner. Assisted by José Sosa.
Substitution, Atlético de Madrid. Diego replaces Koke.
Foul by Robinho (Milan).
Mario Suárez (Atlético de Madrid) wins a free kick in the attacking half.
Foul by Daniele Bonera (Milan).
Diego Costa (Atlético de Madrid) wins a free kick in the defensive half.
Substitution, Milan. Sulley Ali Muntari replaces Nigel de Jong.
Substitution, Atlético de Madrid. Cristian Rodríguez replaces Arda Turan.
Foul by Kaká (Milan).
Gabi (Atlético de Madrid) wins a free kick in the defensive half.
Foul by Giampaolo Pazzini (Milan).