Although Kalidasa makes some minor changes to the plot, the play elaborates upon an episode mentioned in the Mahabharata. The protagonist is Shakuntala, daughter of the sage Vishwamitra and the apsara Menaka. Abandoned at birth by her parents, Shakuntala is reared in the secluded, sylvan hermitage of the sage Kanva, and grows up a comely but innocent maiden. While Kanva and the other elders of the hermitage are away on a pilgrimage, Dushyanta, king of Hastinapura, comes hunting in the forest and chances upon the hermitage. He is captivated by Shakuntala, courts her in royal style, and marries her. He then has to leave to take care of affairs in the capital. She is given a ring by the king, to be presented to him when she appears in his court.
She can then claim her place as queen. The anger-prone sage Durvasa arrives when Shakuntala is lost in her fantasies, so that when she fails to attend to him, he curses her by bewitching Dushyanta into forgetting her existence. The only cure is for Shakuntala to show him the signet ring that he gave her. She later travels to meet him, and has to cross a river. The ring is lost when it slips off her hand when she dips her hand in the water playfully. On arrival the king refuses to acknowledge her. Shakuntala is abandoned by her companions, who return to the hermitage. Fortunately, the ring is discovered by a fisherman in the belly of a fish, and Dushyanta realises his mistake – too late. The newly wise Dushyanta defeats an army of Asuras, and is rewarded by Indra with a journey through the Hindu heaven.
Returned to Earth years later, Dushyanta finds Shakuntala and their son by chance, and recognizes them. In other versions, especially the original one found in the Mahabharata, Shakuntala is not reunited until her son Bharata is born, and found by the king playing with lion cubs. Dushyanta enquires about his parents to young Bharata and finds out that Bharata is indeed his son. Bharata is an ancestor of the lineages of the Kauravas and Pandavas, who fought the bloody war of the Mahabharata. It is after this Bharata that India was given the name “Bharatadesam”, the ‘Land of the Bharata’. However, Kalidasa’s version is now taken to be the standard one.