The Story of Arjuna and the Underwater City
At a Glance
- Central figures: Arjuna, the Pandava archer and son of the god Indra; and Ulupi, a naga princess who rules an underwater kingdom beneath the Ganges.
- Setting: During the Pandavas’ thirteen-year exile, at the banks of the Ganges and in the hidden naga kingdom beneath it; from the Mahabharata.
- The turn: Ulupi pulls Arjuna into her underwater city while he sleeps and asks him to marry her, despite his vow of celibacy during the exile.
- The outcome: Arjuna agrees, they wed, and Ulupi gives him a boon of invulnerability to all water-dwelling creatures; their son Iravan is born from the union.
- The legacy: The boon Ulupi bestowed protected Arjuna during the Kurukshetra War, and Iravan - their son - fought and fell on the Pandava side, his sacrifice remembered among the honored dead of that war.
Arjuna came to the Ganges while the Pandavas were still in exile. Thirteen years stretched ahead of them after the loss at the dice game, and Arjuna had spent much of that time moving - seeking weapons, earning blessings, meeting gods. He had already gone to Shiva’s presence, prostrated himself in penance until the earth shook, and come away with the Pashupatastra, Shiva’s own weapon. His celestial father Indra had received him in the heavens. Arjuna was not a man who rested easily, but that day he rested on the riverbank.
He did not notice Ulupi watching him.
Ulupi’s Kingdom Beneath the River
She was a naga princess - one of the serpent race who hold their courts in the great rivers and the deep places under the earth. Her kingdom lay beneath the Ganges, invisible from the surface: palaces of worked stone catching light from sources that were not the sun, corridors where creatures moved that had no name in the upper world. Ulupi had seen Arjuna before he saw the river. She had watched him from below, tracking the shape of him through the water’s surface, and by the time he lay down on the bank she had already decided.
She used her power quietly. Arjuna slept. When he woke, the sky was gone. He was inside, in a hall that glittered, in a city that had no right to exist, beneath the river he had just been sitting beside.
Ulupi stood before him and did not pretend there was anything accidental about it.
Ulupi’s Plea and the Question of the Vow
She told him plainly that she had brought him here, that she had been watching him, and that she loved him. She asked him to take her as his wife. She said it without shame and without apology.
Arjuna hesitated. He was bound by a vow - during the exile, the Pandava brothers had agreed to a code of conduct, and his included celibacy. He said so. Ulupi listened, and then she answered him point by point: their union was predestined, it was sanctioned by a higher order than the agreement between brothers, and refusing her was itself a failure of dharma - for she was asking in love and sincerity, and to turn away from that without cause was its own transgression. She was not pressing him from desire alone. She framed it as a matter of right action.
Arjuna, who had faced armies and gods and his own fear, found himself persuaded. He agreed.
A Night in the Underwater City
They were married in the naga fashion, by naga rites, in that shimmering palace with the Ganges pressing against its walls on every side. Arjuna spent that night in Ulupi’s city - walking its corridors, seeing what it held, sleeping in chambers that no human being had ever entered. Whatever he thought of it afterward, the Mahabharata does not record his precise feelings. What it records is what Ulupi gave him when morning came.
She bestowed on him a boon. From that day forward, no creature that lived in water could harm him. Rivers, seas, ponds - any battle fought near water, any enemy who drew power from the waters of the earth - none of it would touch him. It was a specific gift, the kind that can only come from someone with actual dominion over the thing being offered. Ulupi had that dominion. She gave it freely.
The Return to the Ganges and the Son Left Behind
She guided him back herself. Up through the water, through the boundary between her world and his, and out onto the bank of the Ganges where he had been sitting the evening before. The river looked the same. The sky was the same. Arjuna stood there as a man who had spent a night in an underwater palace, married to a naga princess, carrying a blessing that would not show until it was needed.
Ulupi told him she would watch over him, that the bond between them did not dissolve because he returned to the upper world. Then she went back.
From that union, in time, came a son: Iravan. He was raised in Ulupi’s kingdom, not among the Pandavas. He grew up naga-born, carrying both lines in him. He would not appear in Arjuna’s story again until the Kurukshetra War, when he came to fight on the Pandava side - and did, and died there, his valor acknowledged by the army his father led.
Ulupi’s Boon at Kurukshetra
When the war finally came, eighteen days of the worst fighting the world of that yuga had seen, Arjuna was at the center of it. He faced Bhishma - the ancient grandsire, the undefeated general of the Kaurava forces. Parts of that fighting brought them near the river. Ulupi’s boon held. Whatever came at Arjuna from the water, whatever power the river carried for an enemy who knew how to use it, it found nothing to grip. The blessing had waited years for its moment, and it performed exactly what Ulupi had promised.
Iravan’s end on the battlefield was mourned. He had not lived long enough in the upper world, had not had the years with his father that other sons had. But he came when he was needed, and he did not flinch. The Pandavas and their allies counted his sacrifice among the honored dead.
The river kept its secrets. What lay below its surface, what courts still stood in the naga kingdom, what Ulupi saw when she looked up through the current at the world above - that remained hers alone.