ในภาคนี้ เรื่องราวเกิดขึ้นหลังจากเหตุการณ์ในภาคก่อนหน้า มังกรชื่อ Drago (ให้เสียงโดย Patrick Stewart) ต้องต่อสู้เพื่อปกป้องหัวใจของมังกรจากศัตรูที่ต้องการใช้พลังของหัวใจโลกันตร์เพื่อทำลายทุกสิ่ง
“Battle for the Heartfire” ยังเล่าเรื่องราวของ Kara (รับบทโดย Jessie Buckley), สาวน้อยที่เป็นทายาทของความสามารถในการสื่อสารกับมังกร เธอมีภารกิจสำคัญในการค้นหาพลังของหัวใจโลกันตร์ และต้องเผชิญกับความท้าทายที่ยากลำบากในการหยุดยั้งวายร้ายที่ต้องการใช้พลังนี้ในทางที่ไม่ดี
ในระหว่างการเดินทาง Kara ได้ร่วมมือกับ Drago และต้องเรียนรู้เกี่ยวกับการเป็นผู้นำและความสำคัญของมิตรภาพและความกล้าหาญ