Trên đồng hoang Jutland, nơi đất cát và gió mạnh đến cây cũng chẳng mọc nổi, có hai vợ chồng chăn cừu với hai cậu con trai, Rasmus và Niels. Rasmus thích chăn cừu như cha, còn Niels chỉ mê săn bắn. Cậu kiếm được một khẩu súng kíp cũ và tập bắn suốt ngày, giỏi tới mức tiếng tăm bay đi khắp nơi. Khi về già, bà mẹ nằng nặc muốn đi bộ sang thành Rome. Cả nhà bán đàn cừu, khoá cửa, lên đường. Niels mang theo khẩu súng. Rasmus càu nhàu: “Đồ đạc đã nặng, còn mang cái ấy làm gì?” Nhưng thiếu khẩu súng thì Niels chẳng vui.
Một đêm, cả nhà dừng chân ở ngã ba giữa rừng. Tới phiên Niels canh, cậu trèo lên cây và trông thấy xa xa ba gã khổng lồ ngồi quanh đống lửa ăn tối. Thìa của chúng to như cái xẻng, nĩa to như cái chĩa ba. Niels nảy ra ý trêu chúng. Cậu ngắm, chờ một gã vừa đưa miếng thịt lên miệng, đoàng một tiếng, viên đạn trúng cán nĩa, mũi nĩa đâm vào cằm gã. Gã quay sang quát gã bên cạnh: “Sao mày hích nĩa tao?” Hai gã suýt đánh nhau, gã thứ ba phải can. Niels bắn thêm phát nữa, cái nĩa thứ hai vỡ tan. Phát thứ ba gãy nốt cái nĩa của gã thứ ba. Gã này khôn hơn, đứng phắt dậy: “Để tao đi xem đứa nào giở trò.”
Niels vừa tụt xuống đất thì gã khổng lồ đã tới nơi: “Đứng yên, không tao giẫm cho bẹp.” Gã xách Niels về chỗ đống lửa. “Mày bắn giỏi, tao tha cho, nếu mày giúp bọn tao một việc. Gần đây có lâu đài của công chúa con vua, kẻ thù của bọn tao. Bọn tao đã làm phép cho cả lâu đài ngủ say, chỉ còn một con chó đen nhỏ là thức. Nó mà sủa thì mọi người tỉnh hết.” Niels đành nghe theo. Gã khổng lồ tung cậu lên bờ thành phủ cỏ dày. Con chó đen vừa lao ra, há miệng định sủa, Niels đã bắn một phát trúng ngay cái vòng cổ. Chú chó giật mình ngã lăn, bùa ngủ phủ xuống, nó nằm ngáy khò khò.
Trong lâu đài, đại sảnh sáng trưng mà không một bóng người. Trên tường treo một thanh gươm lớn, bên dưới là chiếc sừng uống rượu viền bạc, có khắc mấy dòng chữ: ai uống cạn rượu trong sừng sẽ cầm nổi thanh gươm, hãy dùng nó vào việc nghĩa, và sẽ được một nàng công chúa thương yêu. Niels uống một ngụm, nhưng gươm vẫn không nhích. Cậu đi tiếp, thấy công chúa đang ngủ say. Cậu xé đôi chiếc khăn tay viền vàng trên bàn, cất một nửa, lại lấy một chiếc giày thêu vàng bỏ túi. Quay ra đại sảnh, cậu uống cạn sừng rượu. Lần này cậu cầm thanh gươm nhẹ như không, thấy trong người khoẻ đủ làm mọi việc.
Niels ra cổng. Có một cổng lớn và một cổng nhỏ, cậu chỉ mở cổng nhỏ. Bọn khổng lồ kêu: “Sao không mở cổng lớn?” “Then nặng quá, tôi kéo không nổi. Các ông cúi xuống một chút là vào được.” Gã thứ nhất khom lưng chui vào, chưa kịp đứng thẳng, Niels đã vung thanh gươm thần. Gã ngã gục, không bao giờ dậy nữa. Gã thứ hai cũng thế. Gã thứ ba chậm chạp, Niels còn giục: “Nhanh lên, tôi phải về với nhà tôi.” Rồi gã cũng chung số phận. Trời hửng sáng, Niels cầm thanh gươm chạy về rừng. Cả nhà vẫn ngủ. Ai hỏi gươm ở đâu ra, cậu chỉ trỏ tay về phía lâu đài: “Ở đằng kia.” Rồi cả nhà lại lên đường, chẳng ai biết chuyện đêm qua.
Sáng ra, người gác cổng tỉnh dậy, thấy ba gã khổng lồ, kẻ thù của nhà vua, nằm la liệt trong sân. Sừng rượu đã cạn, thanh gươm biến mất, công chúa thì mất nửa chiếc khăn và một chiếc giày. Ai đã cứu nàng? Công chúa bảo: “Phải tìm ra người ấy. Lời cha khắc trên sừng rượu, em không thể nuốt lời.” Nàng cho dựng một ngôi nhà bên đường cái, trên cửa đề: “Ai kể chuyện đời mình thì được ở ba đêm không mất tiền.” Bao nhiêu khách qua kể bao nhiêu chuyện lạ, nhưng chẳng ai nhắc tới ba gã khổng lồ.
Cả nhà Niels đi mãi tới chân dãy núi cao. Gặp một người từ Rome về, đôi giày mới tinh mà giờ thủng lỗ, ông bà chán quá, quay về Đan Mạch. Qua khu rừng cũ, họ thấy ngôi nhà mới và vào ở nhờ. Người quản gia hỏi chuyện, ông bố kể chẳng có gì đáng kể. Rasmus chen vào: “Có chứ, con từng bắn được một con hươu.” Công chúa tự ra hỏi. Niels nhận ra nàng, sợ hết vía, kể qua loa. Rasmus lại nhắc: “Em quên rồi à, đêm ấy em nhặt được thanh gươm.” Quản gia mang gươm tới, công chúa nhận ra ngay. Trong túi Niels lòi ra chiếc giày thêu và nửa chiếc khăn. Niels xin: “Cho tôi đi, tôi làm lợi cho nàng cũng bằng làm hại mà.” Công chúa mỉm cười: “Ai bảo anh làm hại? Anh ở lại chờ cha em tới.” Vài hôm sau, chuông đám cưới vang lên. Niels được phong bá tước, rồi sau này lên ngôi vua.