Ngày xưa, có chàng hoàng tử thưa với vua cha rằng mình muốn lấy vợ. Nhà vua bảo: “Đừng vội. Phải làm được việc gì lớn đã. Ngày trước cha ta cũng bắt ta đi giành thanh gươm vàng rồi mới cho cưới.” Hoàng tử vâng lời, lên đường đi tìm ba cây cỏ lác thần. Chàng gặp một bà lão, bà thổi sáo gọi hết quạ trên đời về hỏi, chẳng con nào biết. Chàng gặp một ông lão, ông gọi hết chim ác là đen, cũng không. Chàng đi qua bảy vương quốc, gặp một bà lão nữa. Bà thổi sáo, chim ác là khắp nơi bay về, chỉ thiếu một con bị gãy chân gãy cánh. Bà cho đi gọi nó, và chỉ con chim què ấy biết ba cây cỏ lác ở đâu.
Con ác là què dẫn chàng tới một bức tường đá cao vút. “Ba cây cỏ lác ở sau tường đấy.” Hoàng tử thúc ngựa nhảy qua, nhổ ba cây cỏ lác rồi quay về. Dọc đường, một cây va vào vật gì đó, tách đôi, và một cô gái xinh đẹp bước ra: “Người thương ơi, em là của anh, anh là của em. Cho em xin cốc nước.” Nhưng quanh đó chẳng có nước, cô gái bay đi mất. Cây thứ hai cũng vậy. Chàng giữ cây thứ ba thật cẩn thận, đợi tới bên một cái giếng mới tách ra. Một cô gái đẹp gấp bảy lần bước ra, xin nước. Lần này nước có sẵn. Cô gái ở lại, tên là Ilonka, và hai người hứa sẽ thương nhau trọn đời.
Về tới gần kinh thành, hoàng tử muốn đón cô dâu bằng cỗ xe thật đẹp, nên để Ilonka ở lại bên giếng, nhờ những người chăn lợn, chăn bò của vua trông giúp. Lão chăn lợn có cô con gái chẳng xinh mà lại lắm mưu. Chàng vừa đi khỏi, lão liền mặc quần áo đẹp cho con gái, rồi đẩy Ilonka xuống giếng. Hoàng tử quay lại cùng vua, hoàng hậu và cả đoàn quan quân. Ai nấy sững sờ khi thấy cô dâu là con gái lão chăn lợn. Nhưng đã hứa thì phải giữ lời. Hai hôm sau, hoàng tử cưới nàng ta, nhà vua cũng nhường ngôi cho chàng. Vậy mà lòng chàng chẳng yên, chàng biết mình bị lừa, chỉ không hiểu lừa thế nào.
Một hôm, vua trẻ muốn uống nước lấy từ cái giếng ấy. Người đánh xe ra múc, trong gàu có một chú vịt nhỏ xinh đang bơi. Bác còn đang ngẩn ra thì chú vịt biến mất, trước mặt là một cô gái lem luốc. Cô theo bác về cung, xin được làm cô hầu. Việc nhiều suốt ngày, nhưng hễ rảnh là cô ngồi kéo sợi. Lạ thay, guồng sợi tự quay, con suốt tự xe, bó lanh tự tháo, dùng bao nhiêu cũng không vơi. Hoàng hậu giả nghe chuyện, thèm cái guồng sợi lắm, nhưng cô hầu không chịu bán.
Cuối cùng, cô hầu bằng lòng đổi guồng sợi, chỉ xin được ngủ một đêm trong phòng nhà vua. Hoàng hậu giả tức lắm, mắng cô một trận, nhưng vì thèm guồng sợi nên vẫn đồng ý, rồi lén bỏ thuốc ngủ vào bữa tối của vua. Đêm ấy, cô hầu vào phòng, đẹp hơn bảy lần, cúi xuống thì thầm: “Người thương ơi, em là của anh, anh là của em. Nói với em một lời thôi, em là Ilonka đây.” Nhưng vua ngủ say, chẳng nghe thấy gì. Ilonka buồn bã ra về, ngỡ chàng xấu hổ không muốn nhận mình. Lần thứ hai đổi lấy con suốt, mọi chuyện lại y như thế.
Mấy người hầu trong cung để ý, liền báo nhỏ với vua: “Bệ hạ đừng ăn uống gì hoàng hậu mời. Hai đêm rồi bà ấy bỏ thuốc ngủ cho bệ hạ đấy.” Hoàng hậu giả không hay biết. Lần thứ ba, khi muốn có bó lanh, bà ta lại đồng ý trả cái giá cũ. Bữa tối, bà mời đủ món ngon, nhưng vua bảo không đói, đi ngủ sớm, nằm thao thức chờ. Bỗng chàng thấy một cô gái xinh đẹp cúi xuống: “Người thương ơi, em là của anh, anh là của em. Hãy nói với em, em là Ilonka đây.” Tim nhà vua đập rộn ràng. Chàng bật dậy ôm lấy nàng, và Ilonka kể hết những gì mình đã trải qua.
Nghe xong, nhà vua giận lắm vì mình bị lừa, còn Ilonka thì chịu bao khổ sở. Chàng ra lệnh đuổi lão chăn lợn, vợ lão và cô con gái ra khỏi vương quốc, không bao giờ được quay về. Ngay hôm sau, nhà vua cưới nàng Ilonka xinh đẹp. Tiệc cưới linh đình, tiếng vĩ cầm, tiếng đàn tam thập lục vang khắp cung. Con chim ác là què cũng được mời tới, đậu trên vai cô dâu. Và nếu họ chưa già đi mất thì chắc giờ này hai người vẫn đang sống hạnh phúc bên nhau.