In the ancient Kingdom of Mahishmati in India, Sivagami (Ramya Krishnan), carrying a baby in her arms, emerges from a cave directly next to a waterfall. She is being chased by soldiers. She kills the soldiers but falls into the river nearby. Knowing that she can't be saved, she makes the ultimate sacrifice, her own life, to save the baby. She holds her hand and the child above water, while she drowns herself. Local villagers spot the stranded child and save the infant while Sivagami dies with her finger pointing to the top of the waterfall. Sanga (Rohini) and her husband name the infant Shivudu and raise him as their own son. To prevent anyone from coming for the baby, they seal the cave with a large rock.
Shivudu (Prabhas) grows up aspiring to climb the waterfall which irks his mother as she does not want to lose her son. He attempts again and again to climb the massive waterfall but fails. Seeing that his son isn't going to stop climbing she asks Swamiji (Tanikella Bharani) for a solution. He tells her that she has to pour water on Shivling 116 times and only then will Lord Shiva answer her prayers. When Shivudu finds out about it, he picks Shivling on his shoulders and puts it below the waterfall. From the top of the falls, a mask falls in to the lap of Shivudu. After pressing the mask into the dirt, he creates an imprint of the person whom the mask belongs to, a beautiful girl. He tries again to climb the waterfall and seeing visions of the girl whom the mask belongs to, succeeds.
On top of the waterfall, Shivudu, now called Shiva, discovers that the mask belongs to Avanthika (Tamannaah), a rebellious warrior whose group has indulged in a guerrilla warfare against king Bhallala Deva / Palvaalthevan (Rana Daggubati) of Mahishmati Kingdom. The group intends to rescue former queen Devasena (Anushka Shetty) who is the real mother of Shiva and she has been imprisoned by the king for the past 25 years.