I vanlig ordning drabbade vinnarna av Champions League och Europa League samman i den europeiska supercupfinalen.
Och Chelsea, som vann Champions League-finalen mot Manchester City i våras, inledde bäst. I den 27:e minuten tog Kai Havertz en löpning på vänsterkanten och slog ett inspel längs marken som Hakim Ziyech förvaltade i mål.
Chelseas 1–0-skytt fick dock ett tråkigt slut på sin match en dryg kvart senare. Marockanen fick en smäll mot axeln, såg ut att ha rejält ont och byttes ut.
Precis före första halvleks slut var Villarreal inte många millimeter från en kvittering. Alberto Moreno slog till på volley från nära håll men sköt bollen hårt i ribban och ut.
Det spanska laget hade ytterligare en ramträff i början av andra halvlek när Chelseas målvakt Edouard Mendy styrde Gerard Morenos avslut i stolpen.
Gerard Moreno och Villarreal skulle dock hitta rätt till slut. I 73:e minuten väggspelade han med Boulaye Dia och sköt upp bollen i krysset – ett mål som tog matchen till förlängning.
Men inte heller där kunde matchen avgöras. 1–1 stod sig och straffar kom att avgöra.
Strax före straffsparksläggningen valde Chelseas tränare Thomas Tuchel att byta in målvakten Kepa Arrizabalaga. Ett bra val visade det sig. Efter att Antonio Rudiger satte sin straff i den sjunde straffomgången klev Arrizabalaga fram och räddade Raul Albiols straff.
Därmed inleder Chelsea fotbollssäsongen med ytterligare en titel.