Thạch Sanh vốn là thái tử (con Ngọc Hoàng), được phái xuống làm con vợ chồng người nông dân nghèo khổ nhưng tốt bụng. Chàng sớm mồ côi cha mẹ, sống lủi thủi dưới gốc đa, hái củi kiếm sống qua ngày.
Lí Thông - một người hàng rượu - thấy Thạch Sanh khỏe mạnh hắn giả vờ kết nghĩa anh em để lợi dụng. Đúng dịp Lí Thông đến lượt phải vào đền cho chằn tinh hung dữ ăn thịt, hắn bèn lừa Thạch Sanh đến nộp mạng thay cho mình. Thạch Sanh đã giết chết chằn tinh. Lí Thông lại lừa cho Thạch Sanh bỏ trốn rồi đem đầu chằn tinh vào nộp cho vua để lĩnh thưởng, được vua phong làm Quận công.
Nhà vua có công chúa đến tuổi kén chồng. Trong ngày hội lớn, công chúa bị đại bàng khổng lồ quắp đi. Qua gốc đa chỗ Thạch Sanh đang ở, nó bị chàng dùng cung tên bắn bị thương. Thạch Sanh lần theo vết máu, biết được chỗ đại bàng ở. Vua mất công chúa, vô cùng đau khổ, sai Lí Thông đi tìm, hứa gả con và truyền ngôi cho. Lí Thông lại nhờ Thạch Sanh cứu công chúa rồi lừa nhốt chàng dưới hang sâu.
Thạch Sanh giết đại bàng, lại cứu luôn thái tử con vua Thủy Tề bị đại bàng bắt giam trong cũi cuối hang từ lâu. Theo chân thái tử, chàng xuống thăm thuỷ cung, được vua Thuỷ Tề khoản đãi rất hậu, tặng nhiều vàng bạc nhưng chàng chỉ xin cây đàn thần rồi lại trở về gốc đa.
Từ khi được cứu về, công chúa không cười không nói. Hồn chằn tinh và đại bàng trả thù, vu vạ cho Thạch Sanh khiến chàng bị nhốt vào ngục. Chàng đánh đàn, công chúa nghe thấy liền khỏi bệnh câm. Thạch Sanh được vua cho gọi lên. Chàng kể lại rõ mọi việc. Vua giao cho chàng xử tội mẹ con Lí Thông. Được chàng tha bổng nhưng hai mẹ con trên đường về đã bị sét đánh chết, hoá kiếp thành bọ hung.