เรื่องราวในภาคนี้เริ่มต้นขึ้นหลังจากเหตุการณ์ในภาคก่อน เมื่อ Shrek (ให้เสียงโดย Mike Myers) รู้สึกเบื่อหน่ายกับชีวิตครอบครัวที่มีความซ้ำซากและต้องการกลับไปใช้ชีวิตอย่างอิสระเหมือนในอดีต เขาอยากให้ผู้คนเห็นเขาเป็น “เชร็ค” ที่น่ากลัวและน่าเกรงขามเหมือนเมื่อก่อน
ในความเศร้าใจนี้, Shrek ได้พบกับ Rumpelstiltskin (ให้เสียงโดย Walt Dohrn), ตัวร้ายที่มีแผนที่จะใช้ประโยชน์จากความไม่พอใจของ Shrek โดยการให้เขาทำข้อตกลงแลกกับวันคืนแห่งอิสระภาพ แต่ในขณะที่ Shrek ลงนามในสัญญา, เขากลับพบว่าตัวเองถูกส่งไปยังโลกที่แตกต่างไปจากเดิม
ในโลกที่เปลี่ยนไป, Shrek ไม่มีลูกและเพื่อน ๆ เช่น Fiona (ให้เสียงโดย Cameron Diaz), Donkey (ให้เสียงโดย Eddie Murphy), และ Puss in Boots (ให้เสียงโดย Antonio Banderas) และต้องพยายามหาวิธีย้อนกลับสู่ชีวิตเดิม โดยการตระหนักถึงความสำคัญของครอบครัวและมิตรภาพ