The actor played Dolton, the virgin heartthrob looking to find love.
"Hi, I'm Dolton, and I'm from Turd River, Colorado," McAvoy's handsome heartthrob said in an intro package, playing a character modeled after The Bachelor's Colton Underwood. "There are a few reasons I could be a virgin, so just pick one and go with that."
After declaring that he's ready to "find love with one of these randos," we get a look at some of the female contestants on Virgin Hunk, and (as with all of Saturday Night Live's parodies of The Bachelor) they aren't a flattering portrayal of reality dating show stars.
"I'm from Rest Area, Missouri, and I can't wait for you to visit my home town, where you'll see that all my busted brothers have a crush on me," Kate McKinnon's unnamed blonde character said, trying to be seductive.
As each new contestant continuously comes and steals Dolton away from the girl before them, their stories get more and more surreal, obscene, and somehow accurate to many of the suitors in most real reality dating shows.
"I loved our date today where I dry humped you at Medieval Times," Aidy Bryant's nameless brunette contestant said with a smile.
"Yeah, I'm sorry my pants exploded. I'm super backed up," Dolton responded, awkwardly.
The dates continued until the girls cycled back to McKinnon, who brought Dolton a peach, because she loves Georgia, and a banana, on which she makes some super vulgar mouth gestures.
"Oh! This is making me fall for you! Look, I'm not saving myself until marriage, I'm just saving myself until the producers say go!" Dolton said, excitedly.
"OK, um, I actually have a secret. I'm also a virgin," McKinnon's character responded.
"Ew! Why? What's wrong with you," Dolton shot back. "I'll walk you out."
The timely parody comes on the day of Underwood's actual birthday. The 23rd Bachelor turned 27 on Saturday, as his season on the popular ABC reality series continues on. Check out the video below for a look at some of the best moments with the real virgin bachelor.
Saturday Night Live airs Saturdays at 8:30 p.m. PT, 11:30 p.m. ET on NBC.