Rumleskaft avslører at den dagen han slettet fra Shrek sin barndom var den dagen Shrek ble født. Derfor reddet Shrek aldri Fiona, han møtte aldri det snakkende Eselet, og følgelig var Rumleskaft i stand til å få Harold og Lillian til å signere bort kongeriket sitt til ham. Når denne dagen er slutt, vil Shrek forsvinne for godt han også. Shrek rømmer fra Rumleskaft sitt slott sammen med Eselet. I utgangspunktet er Esel livredd for Shrek, men han bestemmer seg for å stole på ham etter å ha sett Shrek gråte over denne håpløse situasjonen, noe han aldri har sett et troll gjøre før. Shrek forklarer situasjonen, og Esel hjelper ham å finne et smutthull. Kontrakten blir opphevet dersom Shrek og Fiona deler ett kyss av ekte kjærlighet. Shrek og Esel reiser først dit Fiona blir holdt fanget, og de møter flere troll som slåss mot Rumleskaft. Trollene blir ledet av Fiona, som etter å ha flyktet fra tårnet hvor hun ble holdt fanget, er bitter, kynisk og desillusjonert mot verden. Hun holder også "Pus med støvler" som kjæledyr.