Actions

Work Header

Once Upon a Midnight Dreary

Summary:

Geralt has been living the life of monsters and money for a long time, and he’s overdo for a holiday, but nothing can distract him from the love he’s left behind.

AKA Geralt got hurt and now Yennefer gets to patch him back up.

Started as a one shot but became the start of a series.

*3/18/25 Update: I wrote this fic so long ago, I'm trying to do better with my writing and editing, and there's a big story coming, so hang tight!

Unfortunately, I lost the overall plot for anymore of this series for now, so it will be on hiatus indefinitely, sorry!

Notes:

Hello there! Long time fic writer(and reader), first time fic poster, so I figured I’d go for a one shot fic this time around. This is explicit, but I like to hope the world building is worth any potential cringe. I’d like to get into writing more like I used to, so constructive criticism is always welcome, keep in mind that I’m the only one working on proofreading/editing, sorry for any mistakes, hope y’all enjoy!

(See the end of the work for more notes.)

Work Text:

The grit in between his teeth reminds Geralt that he must be alive.

Death, he thinks, should not be this uncomfortable.

Before he even opens his eyes, the witcher can smell the damp and silty earth beneath his face, a fallow field that had been left uncultivated for at least three years, by the scent of it.

A tugging pain across his left shoulder also calls his attention, and the hazy memories of a nearly-lost fight filter through his fatigued mind. Geralt might have managed to kill the monster, but its venom had wrought havoc on his body as he stumbled out of that damned forest. Must’ve been a very potent poison, to hit him so hard.

Geralt opens one eye slowly, feeling his yellow catlike eyes adjusting sharply to the midmorning sun, and slowly he picks his head up to rub the mud from his other eye before opening it as well. Far off to the north, at the edge of his enhanced vision, lies a village. The fallow plot before him stretches quite a ways across the slight hill. 

As the witcher pushes himself to sit up, he feels the injury across his shoulder flare angrily, and a hiss of pain escapes his lips, almost startling himself with the sound in the quiet air. Geralt’s right hand fumbles a bit numbly to undo the leather straps of his broken armor, needing to get it off his tender shoulder so he can focus.

A quick assessment of his person lets Geralt know that he’s been passed out in the mud for nearly a full day, a lack of water has each breath rasping down his throat a bit. He knows once he finds something to drink that hunger will make itself more present as well, but currently it’s a dull ache compared to his other ailments. Between injuries and dehydration, Geralt’s head is pounding with every slow beat of his heart. So he takes a steady breath to center himself, and pulls his stiff limbs into a meditation stance.

The sun beats hot across his back while a cold wind blows in, as time both slows and speeds up, the morning stretching over to noon while Geralt uses his meditating to push off the last of the poison’s effect on his system and to finish clearing his mind of the haze of injury so he can remember clearly where he left Roach.

At high noon precisely, Geralt’s eyes snap back open, and he more easily gets to his feet, securing his damaged armor in a bundle tied at his hip to free his hands. He spots his silver blade gleaming a few yards to his side, and sheaths it behind his back as well. Wisps of Geralt’s long white hair annoys the edge of his vision, and he impatiently pulls the errant locks back into a more secure ponytail behind his head, vowing internally to cut the long tresses soon, a silent threat even his own mind knows is a farce.

Having collected his thoughts and his belongings, the witcher turns back to the imposing forest at his back, and begins the slow and painful trek along its outskirts to where Roach is tethered to a tree a mile or so southeast, by his recollection. Crows and any number of other birds get quiet as Geralt passes silently beneath them in the thin trees, and Geralt cannot shake the feeling of fatigue that he knows is purely mental, his physical body is a bit broken, but he should still be able to focus.

It’s simply been too long since he’s gone home, winter has taken its time coming this year. Kaer Morhen is the only place Geralt would ever feel at ease enough to consider it true rest, there’s nowhere else on the Continent that he would feel relaxed enough to fully recuperate. 

Briefly, bright purple eyes flash through the witcher’s mind, and then smooth expanses of mocha skin. He shuts down the thought and disallows himself from thinking of her for even a moment longer.

Geralt needs a holiday, this much he knows, but first, he needs to collect payment for this latest job.

The trek back into town after the witcher collects Roach(who was not happy to be hitched to the same tree for a full day even if it was by a serene riverside, thank you very much), is a slow journey. Every jostle in the saddle feels like shards of glass being ground into Geralt’s injured shoulder. Thankfully the road is short, and the White Wolf goes to collect his coin, and be on his way.

He stops by an apothecary stall afterwards to get a few ingredients for his potions, ignoring as always the adverse reaction his presence has on the locals. Some almost seem to respect him, due no doubt to Jaskier’s tireless effort to make the witcher into some sort of white knight by way of his songs. But most people still revile Geralt, and he ignores the catcalls and insults as he gets Roach and leads her back out of town.

It was so shockingly painful to get into the saddle the first time, that Geralt finds himself apprehensive to try again for now, especially since he’s decided to venture just far enough out of town to secure solitude, make a fire, and start tending to his wounds. By evening, the witcher has made a campfire and untacked Roach(who much prefers the freedom to roam and chomp what grasses she sees fit), and he settles in against a felled log to work up a poultice for his shoulder.

The few glances he’s given the wound show it is festering already, trying to rot as fast as his body can heal it, and Geralt is wary of doing much more to aggravate it. Truth be told, the witcher has even begun to doubt that this injury is one he has the skills to heal. He’s loath to track down a sorcerer right now. He’ll no doubt pay all he made on that last job, maybe more.

Geralt impatiently rips free the last of the fabric at his shoulder that held his thin undershirt in one piece, the monster's claw having nearly split up the sleeve toward his neck. He grits his teeth and rubs the healing herbs into his damaged flesh, blood and pus and some black poison runs down his bare arm and chest at his ministrations, and the witcher lets his weary head rest back against the log. The sky grows murky with twilight, the day’s blue sky replaced slowly by dusky purple.

It’s a beautiful color, calming to Geralt, and he can almost smell her, the scent of lilac and gooseberries wafting over him as he starts to give in to his fatigue and injuries, letting his eyes close slowly, her name perched on the witcher’s lips.

Dry leaves nearby crack almost imperceptibly, the fire burning could explain away the sound perhaps to human ears, but not to Geralt’s. 

His eyes fly open and he grabs for his steel sword, but the blade flies from his grasp before he can touch it, and Geralt looks up to behold her painfully gorgeous frame lit up by the glow of the embers.

“Yennefer?” the witcher’s voice is almost as shocked as it is tired, actually breaking from his normal monotone.

“Geralt. How long has it been? Years?” the sorceress says casually, walking forward into the light more.

Geralt could already see her of course, resplendent in a black gown like smoke and lace, a fur coat protecting her from the chill in the air, her long black locks piled atop her head, and those eyes . Those purple daggers that pierce his heart every night that he dreams, her eyes survey his currently sad state, her expression fully neutral. 

He regains enough composure to keep his own tone more even this time, but the witcher is terrible at small talk, and Geralt is acutely aware of how he must look to her. “It’s been a while. How have you been?”

“Better than you, it seems,” Yennefer retorts, coming over to see what injury has brought the witcher to rip half his shirt off and nearly let his guard down.

The bloody sight does seem to concern the sorceress, her mouth thinning into a frown. She kneels beside Geralt, and injured as he may be, he can’t help the slight spike of his heart rate to have her so close after so long, he is only a man after all. Yennefer either doesn’t notice or chooses not to comment, the sorceress unapologetically goes through his rucksack and finds the herbs she needs, murmuring an incantation in Eldar as she presses them into his gaping wound.

A hiss of pain slips through Geralt’s teeth and he grunts in annoyance, unable not to grimace at the feeling of his flesh knitting itself back together a bit, pushing out the last of the toxins and infection. The witcher looks down as Yennefer lays her hand against his chest as she works, and whether the pain is really becoming less, or if he is simply more distracted, Geralt doesn’t know. The sorceress finishes up and sits back to wipe her bloodied hands on the remainder of his ruined shirt, smirking and proud of herself.

“You’re welcome,” she says, making herself comfortable by the fire, seeming content to not mention why it is that the sorceress is even here.

Geralt grunts a noise of begrudging appreciation, inspecting her work.

“You still need a bandage,” Yennefer adds, reaching over and savagely ripping away the rest of his tattered shirt before tearing it into the appropriate sized strips to bandage him.

The witcher frowns and sits forward, a bit bothered to be disrobed by the sorceress, but not bothered like he should be.

“Yen, why are you here?” Geralt asks brusquely, allowing her to wind bandages around his arm and shoulder.

Yennefer gives him an amused look, tying off the fabric. “Not used to being the damsel in distress?” she quips with a smirk, leaning back against the log with Geralt as if she has not a care in the world.

“I wasn’t in distress, I was managing,” the witcher argues, annoyance managing to stave off arousal for the time being. 

Her being coy with him is dangerous. Geralt knows better than any that Yennefer is wickedly cunning, and this would not be the first time he mistook her playfulness for innocence when in reality, she was in need of something from him. The sorceress’s short laugh of disbelief pulls Geralt from his musings.

“I’m sure you were, but nonetheless, I was in town, and overheard that you might be in the area. You weren’t exactly hard to find, Geralt. I was shocked to find you asleep, though. Asleep and saying my name,” Yennefer’s voice softens at that last remark, and Geralt feels heat rise in his face. 

The witcher hadn’t realized her name had fallen from his lips in the brief moments that he’d let sleep take him, and Geralt manages half a shrug before pain stabs through his left shoulder again. He groans with the pain and frowns, clearing his throat hoarsely. “I...I don’t know what you mean,” Geralt tries to say, but the sorceress leans in and presses her lips to his.

Geralt can’t stop the needy exhale from his mouth between kisses, they start slow at first but they build to a desperate pitch all too fast. He’s not sure if he pulled Yennefer into his lap or if she climbed over willingly, but the warm pressure of her body against his is heady and more intoxicating than anything. The witcher’s rough hands grip lightly around her hips, and he stops kissing her to shake his head in disbelief.

“This is a dream,” Geralt barely whispers, unable to hide the raw agony in his voice at that prospect.

No . No, Geralt. This is real,” she murmurs back, her arms winding around his neck gently. The sorceress plays with his long white hair, and as if to emphasize her point, Yennefer grinds lightly down on his lap.

Already aroused at this woman’s mere presence, Geralt shudders as his cock twitches further to life at her movements. The witcher grabs more desperately at her hips and kisses Yennefer deeply, rocking his hips up at her with pure need. The sorceress gasps to feel the bulge in his trousers and she presses herself down harder against Geralt, just as desperate for the friction as he is.

Geralt’s skilled hands make light work of pushing off her coat and unlacing the bodice of her dress, and he frees her breasts to lean in and take a mouthful of each one in turn. Yennefer’s soft moans go straight to his cock, and the witcher feels how tightly he’s straining against the leather now. 

But it’s been so long without her, so long, that Geralt finds himself unusually patient.

Uncaring of their being out in the open air, he pulls Yennefer’s dress off, careful only to keep it far from the flames warming them both. He beholds the body of the sorceress atop him, his hands caressing every inch of her with such devotion that goosebumps break across her flesh at his touch.

Kissing slowly into her neck and throat, one of Geralt’s hands sweeps across Yen’s hip and down, his fingers parting her slowly. He slips two fingers inside her, feeling her heat and wetness, his thumb circles on her clit and the witcher looks up to watch her face as he slowly fucks the sorceress on his fingers.

Yennefer blushes beautifully and gasps, squirming in Geralt’s lap as she holds onto him, being careful not to grab his injured shoulder as the sorceress feels the tension of her orgasm rising. Geralt watches her purple eyes slip shut and her lips part in ecstasy as he speeds up his motions. He holds Yennefer tight as she starts to tremble and moan louder, gasping out as her climax wracks her, and he feels her body squeezing around his fingers. 

It’s such a heady thing for Geralt to see and hear and smell , that the witcher can’t hold back his own soft moan, shifting under her so the ridge of his cock will brush against the sorceress’ thigh.

His body is even more impatient now, his need hard to ignore, but Geralt holds Yennefer still as he withdraws his fingers slowly, listening to her quick breathing as she comes down from such an intense and quick orgasm. The witcher kisses her softly, chuckling against her lips as she almost frantically undoes the leather ties keeping him in his trousers.

“Need some help?” Geralt teases in a whisper, nosing at her ear, his voice husky with amusement and arousal.

“No, thank you, I can help myself,” Yen fires back, her authority ruined by how breathless she is as she manages to free his cock.

Her touch makes Geralt shudder and he rests his head on her shoulder as the sorceress works his stiff member fuller. The witcher feels his toes curl in his boots a bit at how that feels after so long, to have her touch again now, it’s an intense experience.

Geralt finds himself in the unusual circumstance of having to focus a bit harder to not give in to how wonderful it feels. The lonely witcher had no company but his own for so long, that Geralt is a bit out of practice at trying to last. His resolve is further tested when Yennefer gets up over his lap, and truly helps herself to sit down quickly upon his full length.

Fuck ,” Geralt growls, feeling exquisitely how his thick cockhead forces Yen open, and he holds her hips as the sorceress grinds down on him, taking as much as she can.

Yennefer bites her lip to keep her fervent moans somewhat quieter, her eyes heavy with lust as she looks down on Geralt. She smiles coyly at the witcher, and he loses his control a little.

Geralt buries his face in her breasts, his mouth makes its way to each of her nipples, teasing them with his teeth and his tongue, and his hips sharply thrust up at her, impaling the sorceress further on his length. Yennefer’s almost shocked gasps of pleasure only serve to encourage Geralt on as he speeds up his endeavors.

The hard slap of flesh on flesh is loud in the clearing, tempered only by both Geralt and Yennefer’s needy moans for one another. The witcher feels her body start to tense up in pleasure once more, and he knows he is not long off himself. Geralt grabs Yen’s hair roughly and kisses her desperately, fucking up at her harder and faster as much as he can manage from his seated position beneath the sorceress, and with his free hand Geralt pulls her hips down to ride him more aggressively.

Nearly screaming out her moans, Yennefer throws her head back as she comes to an intense orgasm yet again, and Geralt can’t hold back any more.

With a gasp and a soft groan, he gives in to his own orgasm, spurting his thick load deep inside her, the witcher’s cock twitching with each hot pulse. Yen’s tightness around Geralt draws his climax out so he’s seeing stars, more than just those in the sky above them now.

Yennefer shudders lightly and collapses delicately in his lap, her breathing heavy and fast, sweat dewed across the sorceress’ skin in the firelight. Geralt exhales roughly, giving a stray kiss across her collarbone, as the witcher helps her to sit up off him.

She makes a pinched face at his seed dripping from her while she shakily gets down from her knees to sit beside the witcher, and Geralt smirks with pride at that, earning him a playful slap from the sorceress. Geralt fastens his pants back up with a chuckle, still catching his own breath, as Yennefer pulls her clothing back on.

The witcher looks up at her and cannot help but smile, not in lust now, but simply in love, Geralt’s ruggedly handsome mouth turned down at the corners even as he smiles ruefully, and he takes Yennefer’s hand as she comes back down to curl into his right side, seemingly unbothered to lounge in the dirt with him.

He tucks the sorceress’ head under his chin, settling her against his body and staving off the waves of fatigue that now truly wish to drown him. Geralt’s eyes grow heavy and he sighs softly, prompting Yennefer to look up at him in question.

“Don’t wait so long next time to find me again,” Geralt murmurs, his voice thick with sleep.

“You could always stop leaving,” Yennefer replies, her voice almost sad, but Geralt doesn’t hear her. 

The witcher is already fast asleep, resting more deeply than he has in years.

Notes:

3/18/25 Update: I wrote this fic so long ago, I'm trying to do better with my writing and editing, and there's a big story coming, so hang tight!

Unfortunately, I lost the overall plot for anymore of this series for now, so it will be on hiatus indefinitely, sorry!

Series this work belongs to: