劇情簡介:
18歲的蘇菲和繼母以及妹妹居住在歐洲的一個小鎮中,自從父親死後,繼母凡妮就把女兒們安排到原本由父親經營的制帽小店營生,但是蘇菲的妹妹卻對這並不感興趣,於是她很快離開了制帽店;而蘇菲則堅持留了下來,因為這是父親的最愛。
一次,蘇菲在看望妹妹的路上,被兩個士兵截住。這個時候一個神秘男子——哈爾出現了,他用魔法幫助蘇菲解決了問題,並送她去妹妹處。途中哈爾和蘇菲受到了荒野女巫的追捕。當晚,荒野女巫出現在了蘇菲經營的制帽小店中,並對蘇菲下了詛咒,把她變成了一個90歲的老太太,而蘇菲還不能對任何人透露咒語內容。於是蘇菲只能離家出走,在空曠的荒地上遇見了神秘的稻草人,並且為了躲避大風,被引進了神秘的霍爾移動城堡,最終以一個清潔婦的名義居住了下來。在那裏,蘇菲結識了驅使城堡移動的魔力來源——火焰惡魔卡西法,小男孩馬魯可,稻草人卡普以及男主人公哈爾並且安頓了下來,度過了一段平靜美妙的日子。蘇菲逐漸活出了自己,並不知不覺地被哈爾吸引。
城堡的主人魔法師哈爾擁有神奇的力量,但他並沒有像這個國家所有的魔法師一樣接受國王的號令參加戰爭,而是用自己的力量捍衛和平。哈爾常常在黃昏後才精疲力盡地回到自己的城堡,並也因此越來越深陷,將變成惡魔狀態。直到有一天,哈爾對蘇菲說出了自己厭惡戰爭的心聲,蘇菲決定幫助哈爾。在去王宮的路上,蘇菲遇到了荒野女巫。原來這是個陷阱,宮廷女巫莎莉曼雖然是哈爾與荒野女巫的老師,但為了防止他們的心性被惡魔控制,收回了荒野女巫的的魔法,讓她變成了一個普通的老婆婆,而哈爾也因為放心不下蘇菲來到了王宮,當莎莉曼使出魔法要殺死卡西法收回哈爾的魔法時,蘇菲沖了上來救了哈爾。
戰爭終於全面爆發,哈爾為了保護蘇菲和大家,一人獨自面對敵人。內心愛著哈爾的蘇菲不忍讓哈爾一人受難,決心與哈爾一同面對。於是,她驅使著移動城堡追尋哈爾的足跡。而此時的哈爾,已經漸漸失去了意識,變成了一只只會戰鬥保護蘇菲的怪鳥。經過了這一連串事故後,偶然間蘇菲通過戒指的指引發現了隨意門並回到了哈爾的過去,並且了解到哈爾在童年時在流星結束生命的地方遇到了流星卡西法,而後者不願就這樣死去便與哈爾簽定了契約,讓火之惡魔卡西法的魔力為他所用,但是哈爾自己的心臟也將成為這個契約的交換品,將卡西法與霍爾的生命聯系在一起。
故事的最後,蘇菲拯救了奄奄一息的哈爾,破除了哈爾與卡西法之間的約定並且幫助哈爾找回了自己心臟,同時自己身上的詛咒也被解除,而稻草人卡普在蘇菲的親吻下也擺脫了復雜的詛咒——原來他就是鄰國王子,並且答應回國後就停止戰爭。雖然擺脫了契約的束縛,卡西法仍然留戀和他們在一起的生活,於是在它的驅使下,會飛的移動城堡搭載著蘇菲與哈爾一行,過上了和平而幸福的生活。