Shrek živi mirno družinsko življenje, vendar je ves nesrečen. Pogreša stare čase, ko je strašil vaščane in je veljal za bitje, ki se ga vsi bojijo. Celo tako je obupan, da nespametno privoli v dogovor s prebrisanim Špicparkeljcem, ki je v resnici prava žlehtnoba. Shrek se nenadoma znajde v drugi resničnosti, kjer kraljestvu Za devetimi gorami vlada Špicparkeljc, grdobce lovijo in zapirajo, s Fiono pa se sploh ne poznata. Kako bo zdaj Shrek popravil, kar je pokvaril? Kako bo rešil svet in spet osvojil svojo edino pravo ljubezen?
Mladoporočenca Shrek in Fiona imata končno priložnost, da izkusita zakonsko srečo. Toda kaj, ko ta ne traja dolgo. Na veliko presenečenje vseh v kraljestvu nepričakovano umre kralj Harold, prestol pa naj bi podedovala prav Fiona in Shrek. Toda glede na to, da Fiona pričakuje otroka in je Shreku malo mar za dvorno življenje, se novopečeni zakonski mož odloči, da bo poiskal Fioninega uporniškega bratranca Artieja, ki naj bi prevzel prestol. Toda medtem ko se Shrek z osličkom in obutim mačkom odpravi po Artieja, se v kraljestvu ponovno prikaže sanjski princ z zlobnim kapitanom Kljuko, ki bi se rad na silo polastil prestola. Toda princ ni računal na Fiono in njene prijateljice Sneguljčice, Trnuljčice in Motovilke, ki so odločene, da bodo zaščitile kraljestvo.