Film jutustab rohelisest sookollist Shrekist, kes on harjunud elama üksinda soo peal. Aga Shreki rahu saab rikutud muinasjuttude tegelastega, keda Duloci valitseja Lord Farquaad sunnib soo peale kolima.
Madrigali pere elab Colombia mägedesse peidetud maagilises paigas nimega Encanto. Kõiki selle pere lapsi on õnnistatud ainulaadsete annetega üliiinimlikust jõust kuni tervendamisvõimeni. Ainus, kellele pole sellist kinki osaks saanud, on pere pesamuna Mirabel. Kuid kui ta avastab, et Encantot ümbritsev maagia on ohus, otsustab Mirabel, et tema, ainus tavaline Madrigal, võib olla oma erakordse perekonna ainsaks lootuseks.
Mesinädalatelt naasnud Shrek ja Fiona saavad Fiona vanematelt, Kauge Kauge Kuningalt ja Kuningannalt, küllakutse tähistamaks tütre abielu. Kohalejõudes näevad aga Fiona vanemad, et nende väimees pole kaugeltki see, keda nad oleks oodanud…
Fionaga abielludes polnud Shrekil aimugi, et seetõttu peab ta ühel päeval võibolla kuningaks hakkama. Kui Shreki äiapapa, kuningas Harold korraga lahkub, ootab teda just see au. Välja arvatud juhul, kui Shrek (koos oma ustavate kaaslaste Eesli ja Saabastega Kassiga) leiaks enda asemele sobiva kuninga. Kõige lubavam kandidaat oleks Fiona nõbu Artie, keskkoolis õppiv ebakuninglik hädavares, kellest väärilise troonipärija kasvatamine näib olevat üks raskemaid ülesandeid, millega Shrek ja sõbrad eales silmitsi seisnud on.