Nu när Prinsessan Fiona (Cameron Diaz) också är ett träsktroll och dessutom i ett förhållande med Shrek (Mike Myers) så har det blivit dags för henne att presentera sin trolovade för sina föräldrar, Kungen (John Cleese) och Drottningen (Julie Andrews) i landet Far Far Away.
Åsnan (Eddie Murphy) som nu är ihop med Draken följer med Shrek och Fiona på resan till hennes föräldrar som inte riktigt utvecklar sig som tänkt. Det är inte enbart Kungen som är emot detta trollbröllop, det finns andra onda krafter som av en eller flera vill och tänker försöka sätta stopp för detta evenemang och när Shrek får kämpa mot dessa så möter han en liten, till synes oskyldig katt (Antonio Banderas) som kommer att få stor betydelse för alla inblandade.
En riktigt bra och naturlig fortsättning på sagan eftersom Fiona och Shrek nu ämnar gifta sig. Det är även i denna historia fyllt med referenser till andra filmer och kända sagofigurer, det är hysteriskt roligt och här även lite gulligt.