Ole Gunnar Solskjaer’s team, outplayed for most of the game by the promoted side, trailed 2-0 after a first-half goal from John Fleck and a second-half effort from Lys Mousset.
Chris Wilder’s team had been hungrier and more incisive all over the pitch but, from nowhere, United were back in the game when 19-year-old Brandon Williams scored his first senior goal in the 72nd minute.
Substitute Mason Greenwood, 18, equalised minutes after coming on and with United now flying forward, Rashford swept home in the 79th minute.
But still the drama was not over, with Oliver McBurnie controlling the ball and firing past David de Gea to level at 3-3 in the 90th minute. The goal stood after a VAR check for handball.
The result means Manchester United are ninth in the Premier League table, nine points behind fourth-placed Chelsea while Sheffield United are sixth, a point ahead.
“When you are 2-0 down you have to go for it, play with less fear and just go for it,” Solskjaer told Sky Sports. “The average ages of the goals is less than 20, it’s something we are proud of.
“It’s a great experience for our young players because it’s not easy to come back at a place like this.”
“It’s mixed emotions,” he added. “We cannot be happy, we have not performed for the majority of the game but we turned it around and we showed what we could be capable of. We have to do it now for a whole game. We know we can, we just have to show it.”
Sheffield Utd on top
Earlier, Solskjaer’s men were indebted to goalkeeper De Gea, who produced a stunning double-save to keep the score at 0-0 early in the game.
Solskjaer’s team looked rattled, with Williams making a couple of early errors and Phil Jones, making his first league appearance of the season, looking like an accident waiting to happen.
Jones was at fault for the opener. A long ball down the right wing put him under pressure but he should have seen off Mousset.
Instead, the Frenchman outmuscled Jones and cut the ball back for John Lundstram, who saw his effort well saved by De Gea but the goalkeeper could do nothing to keep out Fleck’s follow-up.
Fred and Andreas Pereira were unable to establish any control in midfield. United’s forwards were barely able to get into the game, mustering just one shot in the whole of the first half.
Solskjaer replaced Jones with Jesse Lingard at half-time but Sheffield United deservedly doubled their lead in the 52nd minute.
Manchester United lost the ball on the left and Fleck delivered an inch-perfect pass to Mousset, who bent a right-footed shot past the diving De Gea from outside the box.
To chants of “There’s only one United,” Sheffield continued to boss the match against their insipid opponents, who looked desperately short of confidence.
But with the game drifting, Manchester United found a foothold when a Daniel James cross into the box fell to Williams, who lashed home on the half-volley.
Solskjaer threw on Greenwood to replace Pereira, meaning United were operating with an attacking quartet of Greenwood, Rashford, Anthony Martial and James.
Greenwood slid in Rashford’s cross, to make it 2-2 and then Rashford himself got on the scoresheet.
But just when it appeared Manchester United had grabbed a morale-boosting win, substitute McBurnie struck, controlling the ball on his chest and firing past De Gea.
“They were 2-0 down and we were in control,” Wilder said. “Little bit disappointed. Couple of hours on and couple of beers we’ll look back on it. We might get undone a couple of times and we got undone today, but we came roaring back.”
For more news your way, download The Citizen’s app for iOS and Android.
Download our app and read this and other great stories on the move. Available for Android and iOS.