Luis Suárez rubricó dos de los tantos con los que el conjunto azulgrana selló un 4-1 a favor en el marcador global tras el empate 1-1 en el Camp Nou hace tres semanas. La otra anotación del Barcelona fue con un autogol del zaguero merengue Raphael Varane.
El Madrid, con una pletórica actuación de su juvenil atacante brasileño Vinicius Junior, generó numerosas ocasiones que desperdició por falta de acierto e intervenciones monumentales del arquero azulgrana Marc-André ter Stegen.
Implacable en las suyas, el uruguayo Suárez no perdonó, incluyendo una definición a lo Panenka al cobrar un penal para batir al portero costarricense Keylor Navas para poner cifras definitivas a los 73 minutos.
Los catalanes irán por un quinto título seguido del torneo de copa, algo sin precedentes en la final que se jugará el 25 de mayo en Sevilla. El Madrid no alcanza la final del certamen desde que ganó el título por última vez en 2014 ante el Barcelona.
El otro finalista se decidirá el jueves, cuando el Valencia reciba al Real Betis tras igualar 2-2 en la ida en Sevilla.
Fue el segundo de tres partidos entre los dos clásicos rivales del fútbol español en menos de un mes, y el primero de dos consecutivos en el Bernabéu. Se toparán otra vez el sábado por la Liga, con el Barcelona al frente con una ventaja de nueve puntos sobre el Madrid.