Драконы часто нападают на деревню викингов Берк, крадут скот и угрожают жителям. Иккинг Ужасный Хаддок III, 16-летний сын вождя Стоика Великого, пытается создать механические устройства, чтобы преодолеть свои физические недостатки. Во время налета драконов Иккинг сбивает редкого дракона по имени Ночная ярость с помощью болас-пушки, но ему не верят. Поклявшись доказать свою правоту, Иккинг отправляется на поиски дракона, чтобы убить его. Увидев беспомощного и раненого дракона, он из сострадания отпускает его. К удивлению Иккинга, разгневанный дракон щадит его жизнь.
Тем временем Стоик собирает свой флот, чтобы уничтожить гнездо драконов. Перед отправлением Стоик прислушивается к совету своего лучшего друга и наставника Иккинга, местного кузнеца Гоббера Белча, и записывает Иккинга в класс по борьбе с драконами вместе с другими местными подростками: Фишлегсом Ингерманом, Сноутлаутом Йоргенсоном, близнецами Торстонами Раффнутом и Таффнутом, а также возлюбленной Иккинга, Астрид Хофферсон. Иккинг подвергается насмешкам со стороны сверстников и испытывает трудности в классе. Вернувшись в лес, он находит Ночную ярость, застрявшую в бухте, неспособную летать, потому что болас Иккинга отрезал половину его хвостового плавника. Иккинг подружился с драконом и назвал его «Беззубик» за его выдвижные зубы; он построил упряжь, седло и протез плавника, что позволило Беззубику летать с Иккингом на спине, который направлял его. Иккинг также узнал от Беззубика о поведении драконов, что позволило ему укротить плененных драконов, впечатлив жителей деревни, но вызвав подозрения Астрид.
Тем временем флот Стоика поврежден во время поиска гнезда и возвращается в Берк. Узнав, что для сдачи выпускного экзамена он должен убить дракона, Иккинг пытается сбежать с Беззубиком, но Астрид обнаруживает их. Иккинг берет ее с собой в полет, чтобы показать ей дружелюбие Беззубика. Во время полета Беззубик притягивается к гнезду драконов, где гигантский дракон Красная Смерть приказывает меньшим драконам кормить его, чтобы самим не быть съеденными. Понимая, что драконы атакуют Берк, чтобы выжить, Астрид хочет сообщить об этом жителям деревни, но Иккинг советует ей не делать этого, чтобы защитить Беззубика.
На выпускном экзамене Иккинг сталкивается с плененным драконом Монстроузным кошмаром. Вместо того, чтобы убить его, он пытается публично доказать, что драконы могут быть мирными, но Стоик нечаянно разъяряет Монстроузного кошмара, заставляя Беззубика выйти из укрытия, чтобы защитить Иккинга. Стоик захватывает Беззубика и отрекается от Иккинга после того, как узнает правду. Флот Стоика использует Беззубика, чтобы тот привел его к гнезду, несмотря на предупреждения Иккинга. Напомнив ошеломленному Иккингу, что он пощадил Беззубика из сострадания, а не из трусости, Астрид просит Иккинга собрать других подростков, чтобы приручить драконов для обучения. Вместе они преследуют флот Стоика до гнезда.
Стоик и его флот находят и вскрывают гнездо, но Красная Смерть пробуждается и одолевает их. Всадники на драконах прибывают, чтобы отвлечь Красную Смерть, пока Иккинг пытается освободить Беззубика из тонущего корабля. Стоик спасает Иккинга и Беззубика от утопления и примиряется с сыном. Иккинг и Беззубик заманивают Красную Смерть в воздух, повреждают ее крылья и поджигают ее внутренности, в результате чего она падает и взрывается. Умирающий хвост Красной Смерти ударяет Иккинга, и он падает в огненный шар взрыва. Хотя Беззубик спасает Иккинга, тот теряет левую ногу.
После нейтрализации угрозы Красной Смерти жители Берка мирно сосуществуют с драконами. Гоббер заменяет ногу Иккинга и плавник Беззубика протезами, а Иккинг, теперь восхищаемый своими соседями, начинает отношения с Астрид.