Gareth Bale fick matchen första läge efter fem minuter när han drev upp på vänsterkanten och avlossade ett skott som gick strax utanför Pintos stolpe.
Efter tio minuter tog Real Madrid ledningen när Di Maria sköt in bollen via Pinto i Barcamålet och in vid stolproten. Målet blev den första halvlekens enda.
Barcelona kunde utjämna matchen efter knappt 70 minuter. Marc Bartra nådde högst och nickade in 1-1 i målvaktens vänstra hörn.
Med fem minuter kvar att spela petade Gareth Bale bollen förbi Bartra och löpte ner mot Pinto i Barcamålet. Iskallt petade han in bollen mellan benen och gav Real Madrid ledningen.
Neymar fick ett jätteläge att kvittera kort därpå men hans hårda skott tog i stoplen och studsade undan.
Bales mål blev det sista och Real Madrid är årets spanska cupmästare.
Så här startar lagen:
Barcelona: Pinto - Mascherano, Bartra, Alba, Alves - Fabregas, Xavi, Busquets, Iniesta - Messi, Neymar.
Real Madrid: Casillas - Pepe, Ramos, Coentrao, Carvajal - Xabi Alonso, Luka Modric, Isco, Bale, Di Maria - Benzema