Michael Carrick’s side looked to be heading for another difficult afternoon when Adam Armstrong slotted home a 17th-minute opener.
However, after Riley McGree fired the Teessiders level just before half-time, Jonny Howson claimed a welcome winner from the penalty spot midway through the second half.
The victory lifts Middlesbrough off the foot of the Sky Bet Championship table, while defeat for Southampton means Russell Martin’s side have now suffered four losses in row.
The Saints have suffered a nosedive since starting the season reasonably strongly, but it did not take them long to start creating chances in the north-east.
They should really have taken the lead after 10 minutes, but while Will Smallbone teed up Che Adams after Darragh Lenihan gave the ball away deep in his own half, the Scotland international fired wide from the edge of the area.
Seven minutes later, however, and more Middlesbrough sloppiness did no go unpunished. This time it was Matt Crooks conceding possession in his own half and after Adams threaded a ball behind the home defence, Armstrong burst between Lenihan and Lewis O’Brien to slot a low finish into the bottom corner.
Middlesbrough’s edginess and general lack of confidence was clearly evident, but the hosts almost grabbed an equaliser just before the half-hour mark.
Josh Coburn sent Isaiah Jones racing into the right-hand side of the area, and while the winger’s shot was rolling wide of the far post, it initially looked as though McGree would be able to turn the ball home. A stretching McGree made contact at the far post, but could only prod the ball back across the goal-line, enabling the Saints defence to hack clear.
McGree and Jones were Boro’s best players for most of the afternoon and they combined to level the scores a minute before the interval. Jones’ pressing enabled him to nick possession off a dawdling Mason Holgate and the ball broke to McGree, who swept home an excellent low finish from 20 yards.
Jones went close for Boro at the start of the second half, firing in a low shot that Gavin Bazunu saved, but with the game flowing from end to end, Lenihan almost handed Southampton a second goal as he prodded Ryan Fraser’s cross just wide of his own goal.
Another goal felt inevitable and it arrived in the 66th minute. Hayden Hackney slid over a low cross from the right and Saints defender Taylor Harwood-Bellis tugged down Coburn on the edge of the six-yard box.
Referee Tim Robinson pointed to the spot and Howson stepped up to claim his first goal of the season.
Coburn wasted a good chance to make the game safe with 10 minutes remaining, shooting into the legs of Bazunu. McGree went even closer to claiming a third Boro goal when he fired Coburn’s late cross against the base of a post.
Delano Burgzorg netted his first two Championship goals for Boro, opening the scoring with a well-worked corner in the 30th minute before Emmanuel Latte Lath skilfully added a second before the break.
Finn Azaz set up the second and added a third just six minutes into the second half, before Burgzorg's second put the game beyond the visitors in the 54th minute.
Jordan Clark's strike was nothing more than a consolation as Luton's misery was further compounded by Azaz's stunning curling finish with three minutes left.
If results go Middlesbrough's way, they could keep their place in the top six going into the international break, but Luton are 20th after registering their eighth loss since returning to the second tier.
Elsewhere, Cardiff City missed their chance to move clear of the relegation zone after suffering a 3-1 defeat to Blackburn Rovers, who ended a three-match losing streak on the road.
Andreas Wiemann scored early on in both halves, tapping in both from close range to give Blackburn the advantage.
David Turnbull gave Cardiff hope, turning in the rebound of his own saved penalty, but Lewis Baker's late effort wrapped up the result in the 86th minute, moving John Eustace’s side up to ninth.
Ben Gibson salvaged a point for Stoke City against Millwall, ending the visitors’ four-match winning run.
Josh Coburn had given Millwall the lead from very close range shortly before the break, netting with their first shot on target, but Stoke fought back thanks to Gibson's flicked header from a corner.
The Potters are up to 11th for now, while Millwall leapfrog West Brom into seventh.
After collecting just two points from their opening seven league games, Michael Carrick’s side have now managed successive victories.
Local boy Josh Coburn scored the 63rd-minute winner that halted an improbable comeback by Watford, who now sit just a point above their visitors having won just one of their last eight league fixtures.
Boro, who won their first league game of the campaign last weekend, raced into a 2-0 lead after only 12 minutes, courtesy of Riley McGree’s brace.
Their opening goal was one of stunning simplicity. Jonny Howson slid the ball in front of McGree, who had drifted between defenders. If that gap was large, so was the one left by Watford goalkeeper Daniel Bachmann at his near post into which McGree calmly steered his shot.
After Vakoun Bayo had steered a tame header wide at the other end, Boro extended their lead, again with the greatest of ease.
Matt Crooks moved into the Watford penalty area unchallenged and slid the ball square to McGree, who side-footed another shot past the motionless Bachmann.
Having been gifted the space in which to carve out opportunities in the Watford half, the visitors then reciprocated when Dael Fry failed to cut out a Ryan Porteous through ball and Bayo slid his shot under the advancing Seny Dieng to bring hope back to Vicarage Road.
Just as Watford had not learned their lesson, neither did Fry. The Middlesbrough central defender failed to cut out another forward pass, this time from Yaser Asprilla, and allowed Bayo to sprint clear again. This time, Dieng forced the Watford striker wide and watched on gratefully as Bayo skewed his shot wide.
The home side drew level in the 51st minute after Dieng had flung himself low down to his left to brilliantly parry away a downward Bayo header.
From the resulting corner, Imran Louza’s delivery found its way to the edge of the Boro area where Wesley Hoedt connected with an extraordinary half-volley.
Middlesbrough set about trying to retake the lead.
Isaiah Jones’ control let him down as he sprinted on to one Crooks pass, but Coburn was less profligate when Crooks split the Watford defence with another.
The 20-year-old, whose introduction into the Boro side by Carrick has coincided with their upturn in form, calmly stroked the ball past Bachmann.
The visitors held on this time but only just as Watford substitute Matheus Martins cut inside and curled a shot that clipped the crossbar three minutes into added time.
Isaiah Jones’ deflected strike followed an own goal from Michael Ihiekwe as Michael Carrick’s side extended their unbeaten run to six games and moved to within six points of sixth-placed Norwich.
Wednesday’s defeat would have been even heavier had Boro’s Sam Greenwood not rolled a late penalty against the post, and the Owls find themselves two points adrift of safety in 23rd position.
After briefly threatening to turn things around, Danny Rohl’s side have now gone four games without a victory.
Wednesday had conceded six goals in their previous away game at Ipswich, but they made a decent start on Teesside and could have claimed the lead inside the opening four minutes.
Marvin Johnson was released down the left by a long ball from the back, but while the former Middlesbrough wing-back’s angled drive beat goalkeeper Seny Dieng, the ball shaved the outside of the far post.
Boro, who had claimed a creditable draw at Southampton on Good Friday, took time to get going, but Lewis O’Brien finally recorded the hosts’ first effort at goal midway through the first half.
The Nottingham Forest loanee attempted a curled effort from 25 yards, but the ball deflected wide off Barry Bannan.
The home side should really have claimed the lead six minutes before the interval, but while Jones was unmarked as he met Greenwood’s cross at the back post, he could only slice a wasteful shot wide from eight yards.
Two minutes later, Boro were celebrating taking the lead despite still having failed to record an effort on target.
Greenwood swung in a corner from the right, and when Emmanuel Latte Lath failed to make any contact with his attempted header, Ihiekwe could only deflect the ball past James Beadle and into his own net.
Ihiekwe’s bad day might well have got worse two minutes after the break, but while the defender looked to have caught O’Brien in the area, the referee waved away Boro’s spot-kick appeals.
O’Brien saw a shot blocked as Boro continued to press for a second goal, while at the other end Wednesday substitute Djeidi Gassama wasted a decent opening as he completely missed his kick while attempting to sweep home Pol Valentin’s cross.
Latte Lath fired wide midway through the second half, with Beadle saving from Greenwood a couple of minutes later, but Boro claimed a second goal to make the game safe with 17 minutes remaining.
Luke Ayling released Jones down the right, and the winger’s shot looped beyond Beadle thanks to a hefty deflection off Bannan.
Boro should have added a third goal with nine minutes left after Bannan was penalised for handling Ayling’s cross, but Greenwood’s side-footed penalty rebounded off the base of the left-hand post.
Midfielder Neil was sent off for Tony Mowbray’s side deep in first half stoppage time after receiving a second yellow card for dissent, allowing Boro to take complete control.
Former Sunderland youngster Sam Greenwood, who came through the ranks on Wearside before leaving for Arsenal when he was just 16 and later joining Leeds, broke the deadlock on 58 minutes before Matt Crooks added a second goal two minutes later.
The impressive Isaiah Jones scored the third 17 minutes from time before substitute Marcus Forss wrapped up the emphatic victory in the last minute.
After failing to pick up three points in any of the first seven Championship games, Boro – who were widely fancied for promotion before a ball was kicked this season – have now won four league games on the bounce.
Sunderland had won five of their last six games and were first to threaten when Abdoullah Ba fired just over the crossbar inside the first 10 minutes, before Patrick Roberts forced a fine save out of Seny Dieng after a weaving run from the right.
Boro responded well and after Greenwood’s shot was only parried by Anthony Patterson, Josh Coburn hit the outside of the post with the rebound from a tight angle.
The game swung in Boro’s favour deep in first half stoppage time when Neil, who had been booked earlier in the half for a foul on Coburn, was given a second yellow card for dissent. A melee then broke out at half-time after a Coburn foul on Ballard, with Carrick and his coaching team rushing on to the pitch in an effort to calm things down.
Boro had two glorious chances early in the second half as they set about making the most of their numerical advantage. Patterson made a fine save at the feet of Crooks, who looked certain to slot home Jones’ cross from the right. From the resulting corner, Paddy McNair headed over just four yards out.
The goal Boro had threatened arrived 13 minutes after the break. Dael Fry picked out Greenwood inside the box and the 21-year-old lashed beyond Patterson. Just two minutes later the game was all but over as Jones beat Clarke down the right before teeing up Crooks for a tap in.
Jones got the goal he deserved after weaving across the pitch from the right and keeping his cool to slot home with his left foot. And after substitute Latte Lath’s shot was saved by Patterson in the 90th minute, Forss was on hand to score the fourth.
The Bluebirds had won four in a row before this trip to Teesside but Jones’ first league goal of the season in the 56th minute did the damage before Latte Lath sealed a 2-0 victory with six minutes left.
It had been an otherwise largely uneventful evening at the Riverside Stadium with neither side really dominating proceedings in an attacking sense until those goals.
There was a very tentative start. Neither side wanted to press the other, which meant both defences spent a lot of the time knocking the ball around to each other.
That frustrated the fans initially, and the nearest a player came to threatening in the first 25 minutes was when Ollie Tanner was played into space down Boro’s left side.
Tanner, one of two Cardiff changes to the team that beat Rotherham, burst into the box before his low delivery was spilled in the six-yard box by goalkeeper Seny Dieng and Middlesbrough cleared.
Dieng was also in the right place to hold a routine Ryan Wintle header from 12 yards soon after.
When Sam Greenwood, one of four changes for the hosts from the side that won at Watford, was handed possession deep inside the Cardiff half, the crowd suddenly had something to shout about.
Greenwood, on loan from Leeds, attacked his marker at pace before firing a rasping drive at goal for Jak Alnwick to turn over for a corner after 26 minutes.
That did at least breathe life into the first half. Dieng did brilliantly to make a save from Karlan Grant when the Cardiff winger tried to slot past him after he had been put through.
Cardiff went close soon after the restart too. Tanner curled against the bar from an angle after turning one way and then the other inside the box.
But Middlesbrough went ahead when Lukas Engel, who has had a slow start since signing from Danish side Silkeborg in the summer, drilled a low cross inside the six-yard box for Jones to slide in and finish.
That prompted Cardiff to push on more. Striker Kion Etete was disappointed not to hit the target with a header from a corner.
But in the 84th minute Marcus Forss’ flick on halfway was perfect for Middlesbrough to counter.
Latte Lath’s speed got him away from his marker and even though Mahlon Romeo caught him, the Ivorian’s turn created the opening to apply the cool finish for his second league goal of the season.
After that Dael Fry and Forss went close to adding to Middlesbrough’s lead but Michael Carrick’s men had already done enough to seal the points.
Harris, in his second managerial stint with the club he made 374 appearances as a player, steered the Lions away from relegation last season.
However, despite Millwall sitting 11th in the Championship and six points off the play-off places, the 47-year-old has chosen to leave the club.
The Lions had been on a nine-game unbeaten run before losing 1-0 to Frank Lampard's Coventry City on Saturday, in what was the former Chelsea midfielder's first win since taking over the Sky Blues.
Harris will, however, stay in position for Wednesday's clash against league leaders Sheffield United and then away at Middlesbrough this weekend before leaving.
Millwall chairman James Berylson, said: “At the start of 2024, we found ourselves in a tough spot. Neil came in and, along with his coaching staff, galvanised the squad.
“Through action and leadership, he led Millwall on a magnificent run of form, ensuring our return to Championship football this season.
“I want to thank Neil for all his efforts since returning to the club, and we will be forever grateful to him for that.
“After discussions with Neil in recent days, he felt it was the right time to step down from the role following the Middlesbrough game and I have accepted his decision."
In a letter to fans explaining his departure, Harris wrote: “Today I am announcing that I will be leaving Millwall Football Club after Saturday’s game against Middlesbrough.
“This isn’t an easy decision, as everyone knows this club is more than a job to me, it's my club, and always will be.
“Being here always felt like home, as a player, as a captain, and as a manager. We are a family, and it's been my life for so many years. But I always said when I returned that I would leave when the time felt right, and now is that time.
“Coming back last season and all the highs that came with it will never be rivalled. It was one of the highlights of my career. We fought together as a team, as fans and as a united football club.
“We have some special characters in this team. They are dedicated and hungry to do well. With the right encouragement and support, I’m sure they can achieve great things.
“I would like to thank all the staff at the club for their loyalty and support and especially the owner, James Berylson, for welcoming me back. He's been superb to work with, and I will always be grateful for the great friendship we shared.
“We have the most passionate fans in the country, and your support has meant the world to me. We are often misunderstood, but the uniqueness of Millwall is also what makes us so special.
“I wish all of my friends at Millwall Football Club the best for the rest of the season and I will see you soon. Chopper.”
Morgan Rogers scored the only goal as Boro followed their midweek Carabao Cup quarter-final success at Port Vale with a third straight win in all competitions.
Albion remain fifth, but Carlos Corberan’s side have now won just one of their last five league games and were second best throughout on Teesside, despite the fact Boro’s squad have been decimated by injury in recent weeks.
Michael Carrick was forced to name a team without a recognised striker after Emmanuel Latte Lath was forced off at Port Vale and Josh Coburn was only deemed fit enough for the bench, but their forward line still caused the Baggies problems.
Isaiah Jones had a glorious early chance when he was played in by Rogers, only to be denied by the feet of Alex Palmer.
Jones broke in behind again after 15 minutes and was fouled by last man Cedric Kipre, but referee James Linington opted for a yellow card rather than a red, to the fury of the home players and fans.
The Baggies almost took full advantage of that stroke of good fortune.
First Kyle Bartley’s header from a corner clipped the outside of a post and, after Albion kept the move alive, fellow defender Darnell Furlong forced a superb point-blank save from back-up Boro goalkeeper Tom Glover, in for the injured Seny Dieng.
Even without a striker Boro looked threatening throughout the opening period and got themselves in front with a really well-worked goal five minutes before half-time.
Midfielder Dan Barlaser picked out Lukas Engel with a defence-splitting pass and the left-back crossed first time for Rogers, who calmly found the bottom corner.
Boro thought they had got off to the perfect start in the second half when Rav van den Berg had the ball in the net, but the defender was offside and the goal ruled out.
Albion saw a lot more of the ball in the early stages of the second period, but their probing failed to result in any clear-cut chances.
It was Boro who still looked the more threatening and Rogers was denied a second goal just after the hour mark when Palmer somehow kept out a close-range effort, tipping the ball on to a post.
Rogers was pulling the strings for Boro.
He teed up Sam Greenwood for what looked like a certain goal, but the Leeds loanee somehow fired over from six yards out.
The 21-year-old then set Jones away down the right, with Palmer again coming to Albion’s rescue.
The 21-year-old Rogers had only been on the pitch 13 minutes when he fired home in the 89th minute to earn Middlesbrough a fifth straight Championship win.
The result moves Michael Carrick’s side just one point behind his former team-mate Rooney’s seventh-placed City, who lost for a fourth game in a row on the road.
It looked like the ex-Manchester United and England pair would have to settle for a point on Rooney’s debut in the Birmingham hot seat, but substitute Rogers had other ideas.
Middlesbrough had their chances, particularly in the first half, but had not found a way past John Ruddy in the Birmingham goal.
Rooney was greeted with a mixed reception on his return to an English touchline, with Boro’s fans quick to direct a derogatory chant his way while the Blues’ contingent chanted his name.
And he was a relieved man in the opening couple of minutes when Dion Sanderson’s misplaced back pass went out for a corner that came to nothing.
Sanderson was also involved in unsuccessful penalty shouts from the home side. The defender, who had a spell on loan at Sunderland, brought down Matt Crooks after his touch went out of play but referee Rebecca Welch turned down appeals.
While Middlesbrough, who went close through Josh Coburn on occasions, did most of the attacking, Birmingham were first to seriously test the goalkeeper.
Seny Dieng was quick to dive to his left to prevent Krystian Bielik’s low first-time effort from finding the bottom corner after some clever wing play from Siriki Dembele.
After that Coburn headed Dan Barlaser’s free-kick over at the other end and Isaiah Jones had a goal ruled out for offside after he had been put through by the homegrown striker.
There was a second strong penalty shout waved away when Bielik appeared to bring down Jones, whose speed got him to the ball first when both players went for a 50-50.
The best chance of the half fell to Coburn just after half an hour. Hayden Hackney and Sam Greenwood combined before Coburn was played in but his scuffed shot bounced wide when he should have found the target.
Somehow it remained goalless despite Middlesbrough’s first-half domination, even though Birmingham goalkeeper Ruddy was lucky not to concede after being caught on walkabout out of his box. He was booked for fouling Jones instead.
Soon after half-time Ruddy made two fine saves. First, he flew to his right to turn behind an effort from Hackney and then he reacted to hold Paddy McNair’s goalbound touch following a corner.
Middlesbrough, who also had a rasping volley from McNair saved by Ruddy, continued to have more of the game but it looked like they would have to settle for a point until Rogers found the breakthrough with his first league goal for the club.
He arrived with a minute left to clip Crooks’ low return pass inside Ruddy’s near post to deflate Birmingham hopes.
Josh Coburn scored the opening goal of the game for Boro and then hauled them level at 2-2 after goals from Bali Mumba and Finn Azaz had fired Argyle in front.
Sam Greenwood put Middlesbrough back in front, only for Whittaker to rescue a point in a game neither side deserved to lose.
Mumba cut inside from the left and exchanged passes with Azaz to break into the Boro box after three minutes, but visiting goalkeeper Seny Dieng was quick of his line to deny Mumba as he let fly from close range.
Any initial pressure Argyle may have had was soon forgotten as Middlesbrough wrestled control.
Matt Crooks fired a warning shot in the 20th minute and although that went well wide, Boro were soon ahead.
Lukas Engel powered in a cross from the left and Coburn finished at the near post, under pressure from Lewis Gibson, rushing back to defend his line after blocking a 23rd-minute shot.
Plymouth keeper Michael Cooper made two important saves as Middlesbrough pressed for another goal.
He palmed over Isiah Jones’ rising 27th-minute drive from the right-hand side of the box but saved his best to deny Crooks, who connected perfectly with Jonny Howson’s corner to drill a side-foot volley goalwards, only to be denied by Cooper’s reaction save on the goal-line.
Argyle responded in style, with two goals arriving before half-time courtesy of the Azaz and Mumba combination again.
Azaz threaded a ball through the Boro back-line and into the box for Mumba and this time the attacking midfielder made no mistake in beating Dieng with a measured finish.
Mumba, with a deft backheel, returned the favour four minutes later. Azaz – on loan from Aston Villa – wrong-footed marker Rav van den Berg, made space and curled a beautiful right-foot shot from 20 yards into the opposite top corner.
Greenwood sent a 20-yard free-kick just over Cooper’s crossbar in the 49th minute as Boro sought a way back into the game.
Cooper was quickly called into action minutes later, saving well low down with his feet to keep out an angled drive from Greenwood after he was put in on goal by Jones’ superb pass.
Greenwood won a penalty, drawing a foul from Argyle defender Dan Scarr, just before the hour.
Coburn’s spot-kick was brilliantly saved by Cooper, diving to his left, but the Boro striker followed up to tap in and level the scores.
Buoyed by their equaliser, Middlesbrough surged ahead again in the 64th minute with a brilliant flowing move down the right.
Jones’ pass found Crooks, whose angled cutback from the byline was stroked home first time by the impressive Greenwood at the near post.
Again Argyle responded, now in torrential rain.
Kaine Kesler-Hayden was fouled on the right and Whittaker’s 25-yard free-kick skimmed through a crowded box and past the outstretched arm of Dieng.
Frustrations grew on Teesside after failing to end a wait since before Christmas for a home victory in the Sky Bet Championship; a run that has stretched to five matches.
Matthew Sorinola’s opener in the seventh minute was followed by Ryan Hardie’s 13th goal of the season in the 31st minute to put Plymouth on track for only their second away win.
Plymouth deserved it too after a first half when Middlesbrough looked nervous in possession at times and defensively unable to thwart danger.
Considering Middlesbrough stunned leaders Leicester a week earlier, and Plymouth’s away troubles, it was the visitors who looked full of confidence and intent in the first half.
It did not take long for Ian Foster’s side to take the lead.
After the visitors were gifted possession on halfway, Plymouth attacked and Darko Gyabi was allowed to curl towards the far post where Tom Glover dived to stop.
The goalkeeper did not do enough to get the ball out of harm’s way and Sorinola was on hand to force beyond Glover and secure his first goal since moving to the Pilgrims from Belgium in January.
The only decent opportunity Middlesbrough created was when Marcus Forss was denied by Conor Hazard after moving to the near post to meet Lewis O’Brien’s cross. The flag went up anyway.
Otherwise Plymouth – who made three changes to the side which lost 3-0 to West Brom – put the red shirts under a lot of pressure defensively when they were on the ball and got their rewards.
Glover had already fumbled an effort from Morgan Whittaker before the second arrived just after the half-hour mark.
Hardie was picked out in too much space by the lively Gyabi. The striker’s first touch was perfect before he was allowed to cut inside and curl round Rav van den Berg and finish in the far corner.
As the boos and jeers got louder Plymouth kept pushing.
Adam Randell almost had a third soon after when he was allowed to run through the centre of the pitch and shoot. Glover stopped the first and then charged forward to block the rebound.
There was another save for Glover to make at his near post after Whittaker had been played in down the right and Middlesbrough reached half-time needing a complete reset. It did not come.
Plymouth were first to go close again after the restart. Gyabi’s pass into the area was collected by Hardie, whose first touch rounded Hazard but the angle was too tight to find the net.
Riley McGree missed the target from distance soon after and that was as close as Middlesbrough got. The Aussie was replaced, along with Finn Azaz, as head coach Michael Carrick looked for an injection from Emmanuel Latte Lath and Sam Greenwood.
Yet Jordan Houghton’s low drive was next to arrive and, despite plenty of possession, Middlesbrough could not create anything of real note.
When they eventually did, Sammy Silvera’s shot went for a throw-in when he was unmarked at the back post in the latter stages.
The Black Cats' four-game winning run to begin the season was ended by Plymouth Argyle last weekend, but they responded well on home soil.
Local lad Chris Rigg, aged just 17, earned Sunderland Wear-Tees bragging rights with an outrageous backheel after 24 minutes.
Middlesbrough had chances but lacked a cutting edge as Sunderland made it three clean sheets from three home league games this season.
The win lifted Regis Le Bris' men back into top spot in the early Championship standings ahead of West Brom facing Plymouth later in the day.
Elsewhere in the early kick-offs, Johannes Thorup earned his first home league win as Norwich City manager in a 4-1 victory over Watford.
The Canaries' only other win this season came on their travels at Coventry City last month, but they were good value for their latest triumph.
Callum Doyle's long-range opener was cancelled out by Ryan Andrews' strike, before Borja Sainz restored the hosts' lead just before half-time.
Marcelino Nunez added a third nine minutes into the second period and Ben Chrisene made certain of the three points late on.
QPR drew 1-1 with London rivals Millwall at Loftus Road, meanwhile, with both sides remaining in the bottom half of the table with one win apiece.
Duncan Watmore rounded off a nice team move to put Millwall ahead after 34 minutes, but Michael Frey poked home a leveller four minutes later and neither side could find a winner.
Matt Crooks gave bottom-of-the-table Boro hope with a 55th-minute reply but, including last season’s two-legged play-off final defeat to Coventry, the Teessiders have now gone 11 games without a league win, equalling the club’s longest sequence outside the top flight since January 1925.
The game kicked off amid a mood of celebration as the hosts commemorated the landmark occasion by welcoming a series of club legends onto the pitch.
Among them were Premier League-winning defender Colin Hendry, former PFA chief executive Gordon Taylor and 89-year-old Bryan Douglas, who played for England at the 1958 and 1962 World Cup finals.
Rovers appeared buoyed by that reception and Tyrhys Dolan should have opened the scoring less than two minutes in, but he headed over an empty goal after Callum Brittain’s pinpoint right-wing cross had taken Boro goalkeeper Seny Dieng out of the equation.
The Senegal international was in the right position to parry away from Lewis Travis shortly afterwards.
Jonny Howson went on to fire too high with the visitors’ first attempt of the afternoon at the midway point of the half, before Szmodics fittingly grabbed the game’s opener just after fans had begun clapping on the half-hour mark in memory of PA announcer Matt Sillitoe, who tragically passed away last month at the age of 30.
After Sam Gallagher stepped over a forward pass by Hayden Carter, the ex-Peterborough midfielder swept a strike inside Dieng’s right-hand post from the edge of the box.
Boro rallied, with Marcus Forss forcing a smart near-post save from Aynsley Pears, while Emmanuel Latte Lath should have done better with two great headed chances from Howson dead-ball deliveries, directing the first wastefully wide and the second tamely at the home keeper.
An unchallenged Gallagher also missed the target for Rovers with another aerial opportunity from six yards on the stroke of half-time.
Dieng then had to be alert to deny Dolan just 25 seconds after the restart following a Szmodics right-wing raid, but the latter extended the lead in the 49th minute.
Receiving the ball from Ryan Hedges, Szmodics drilled a 20-yard effort that Dieng could only help into the top corner.
Boro refused to surrender, though, with Crooks cleverly flicking in from six yards from Forss’ cross to reduce the deficit.
After Dieng made a double save to deny Adam Wharton and Dolan, Boro then missed three great chances to level, with Latte Lath ballooning over, Forss prodding wide and Darragh Lenihan heading too high.
As the match continued to swing from end to end, Dieng displayed more sharp reflexes to deny Hedges twice and make a one-on-one stop to prevent Szmodics from claiming the match ball.
The profligate Latte Lath, meanwhile, burst clear on goal at the death, only for his heavy touch to gift Pears the chance to snatch the ball off his feet.
Substitute Samuel Silvera struck the 77th-minute winner, whipping home a close-range free-kick after Swansea goalkeeper Carl Rushworth had been penalised for picking up Harry Darling’s back pass.
Middlesbrough led at the interval through Sam Greenwood’s composed finish, but Jamal Lowe equalised to give Swansea hope of only a third home league win this term.
Alan Sheehan took caretaker charge for the third time, with Swansea still hoping to appoint Tottenham coach Chris Davies as Michael Duff’s permanent successor.
Swansea had picked up four points from Sheehan’s two games, while Middlesbrough boss Michael Carrick was seeking to arrest a decline that had brought four defeats from their last five games.
The vast majority of first-half chances fell Swansea’s way, with the hosts dominant in the early stages.
Unfortunately for Swansea, many of them fell to defenders, with Middlesbrough goalkeeper Seny Dieng grateful for their wastefulness.
Darling, fresh from his late midweek equaliser at Stoke, strode forward to ripple the side-netting and the unmarked Josh Key headed over from eight yards.
Liam Walsh soon swung over another delicious cross which Bashir Humphreys beat Dieng to, only to plant his header wide with the goal gaping.
There was brief discomfort for Swansea – and Rushworth in particular – when the goalkeeper fell heavily under Emmanuel Latte Lath’s challenge and needed treatment before being able to continue.
Further evidence of Swansea’s profligacy in front of goal came midway the first period.
Josh Tymon sent Lowe scampering into the channel behind Dael Fry and the Jamaica forward took his time to pick the right pass, squaring to Walsh whose effort went inches wide.
Middlesbrough bared their teeth for the first time as Matt Crooks set up Greenwood and his shot forced Rushworth into action at his near post.
The deadlock was broken two minutes before the break after a spell of patient passing from the visitors.
Crooks moved inside from the left to spot Greenwood’s run and a fine left-footed finish gave the on-loan England Under-21 international his fifth Middlesbrough goal.
Swansea were not deflated by falling behind and Jamie Paterson fired wide before the equaliser arrived after 59 minutes.
Tymon found space down the left to deliver a fine cross and Lowe met it with power from six yards out to give Dieng no chance.
Isaiah Jones almost restored Middlesbrough’s lead after charging through from his own half.
But Rushworth’s error allowed Morgan Rogers to tee up fellow substitute Silvera for the winner and Boro survived the stoppage-time loss of Dieng to injury to hold on for a much-needed victory.
The game started slowly, with the hosts not opening the scoring until a 75th-minute Anis Mehmeti penalty after a foul on Sinclair Armstrong by goalkeeper Michael Cooper.
The Blades showed great character to haul themselves back into the game, with 18-year-old Ryan One scoring the equaliser in the 86th minute.
But things went up a notch in stoppage time when Robert Dickie was given a straight red card for a cynical foul on Callum O'Hare 35 yards out.
The drama wasn't finished yet and with seconds to go, Harrison Burrows smashed home a left-foot rocket to win the game for the Blades.
At the bottom of the table, Plymouth opened a four-point gap between themselves and the relegation zone with a 1-0 victory over bottom-of-the-table Portsmouth.
The victory means that Wayne Rooney's side have dropped just two points in their last five games at Home Park, having lost six on the bounce in all competitions away.
It is now four without a victory for Portsmouth, who have earned just nine points in their opening 14 matches back in the Championship.
Elsewhere, Middlesbrough responded to their 3-0 defeat at home to Coventry City last weekend by beating second-bottom Queens Park Rangers 4-1 on the road.
That was a first victory in three for Michael Carrick's side, who are one place below the play-off positions and trail only by goal difference.
QPR are four points behind fourth-bottom Preston North End, having failed to win any of their last 10 league games.
Alex Neil’s side had beaten Sunderland and Leeds in the seven days prior to their trip to Teesside, and they claimed another notable scalp as their surge up the table continued.
Michael Rose’s early headed effort from a corner opened the scoring, with Mehdi Leris adding a second goal with an angled finish shortly before the interval.
Middlesbrough struck the crossbar through a long-range strike from Josh Coburn, but Michael Carrick’s side delivered an off-colour display as they suffered a first defeat since mid-September.
Stoke were the better side from the off, with Dwight Gayle coming close to opening the scoring in the second minute when he latched onto Luke McNally’s floated through ball, only to scuff his effort at goal.
Six minutes later, however, and the visitors were claiming the lead as the Middlesbrough defence failed to deal with a corner.
Sead Haksabanovic delivered the ball from the right, and after peeling off Matt Crooks, Rose found the net with a near-post header.
Seny Dieng might well feel he should have done better, with the Middlesbrough goalkeeper getting his hand to the ball but only succeeding in helping it into the net.
Stoke remained the dominant force and almost doubled their lead on the quarter-hour mark when Leris’ one-two with Ki-Jana Hoever sent him racing towards the edge of the 18-yard box, only for his tame shot to be saved by Dieng.
Haksabanovic threatened midway through the first half, firing a shot wide from 20 yards after Josh Laurent flicked the ball into his path, and Stoke’s superiority was rewarded with a second goal eight minutes before the break.
Daniel Johnson rolled the ball into Leris’ path on the right of the area and the Algeria international drilled a slick low finish into the far corner.
Boro had not created anything of note at that stage, but they finally sparked into life through Coburn shortly before the interval.
The youngster fired in a shot that was saved by Stoke goalkeeper Jack Bonham before hammering another long-range effort against the crossbar after picking up a loose ball and driving towards the edge of the box.
Jonny Howson fired a shot wide as the home side tried to rally at the start of the second half, but Stoke almost scored a third goal when Gayle teed up Haksabanovic in the area, only for Dieng to save the Celtic loanee’s side-footed shot.
Stoke’s clean sheet was confirmed with four minutes remaining when Bonham got down to produce an excellent save as he turned substitute Morgan Rogers’ flicked effort around a post.
Regis Le Bris' side found themselves 2-0 down inside 17 minutes at the Swansea.com Stadium, following goals from Zan Vipotnik and Liam Cullen.
But the Black Cats got back into the match on 28 minutes through Dan Ballard, who headed home from Trai Hume's free kick to score his first league goal since December 2023.
Dan Neil restored parity with a stunning strike from distance after being picked out by Jobe Bellingham, with the Sunderland midfielder rifling the ball home off the crossbar.
Bellingham then sealed the victory two minutes later, arriving late in the box to thump Chris Rigg's cutback beyond Lawrence Vigouroux for his third goal of the season.
The result saw Sunderland move up to third in the standings, while Swansea dropped to 10th in the division after suffering their first defeat in four Championship games.
Elsewhere, Sheffield United took top spot back in the second-tier following a 2-0 victory over lowly Plymouth Argyle at Bramall Lane, piling more pressure on head coach Wayne Rooney.
Goals from Gustavo Hamer and a late Kieffer Moore penalty secured a comfortable win for the league leaders, who lead Leeds by three points. Plymouth, meanwhile, are a point from safety after their fourth straight defeat.
Sheffield Wednesday got their play-off push back on track with a 3-1 victory over Oxford United at the Kassam Stadium, which was their third win in five matches.
Greg Leigh had got the hosts ahead in the first half, before Josh Windass equalised before half-time.
Jamal Lowe netted four minutes into the second half to put the Owls in front, before Djeidi Gassama volleyed in on 61 minutes to make things more comfortable for Danny Rohl's side.
Wednesday are ninth in the table, five points below sixth, while Oxford are 20th and just one point above the relegation zone.
Millwall were beaten 1-0 away to Middlesbrough in Neil Harris' final match as manager, having announced earlier this week that he would step away from his position.
Emmanuel Latte Lath got the only goal of the game after 10 minutes to seal a result that saw Michael Carrick's side go sixth. Millwall are 13th on 25 points after 20 matches, with the search for a new head coach already underway.
Aaron Connelly had given Sunderland the lead just 10 minutes in, benefitting from a clearance to beat Lukas Jensen on the volley and claiming his first goal for the club before the players were taken off the field for half an hour due to two medical emergencies in the crowd.
Millwall were a different side when they came back out onto the pitch, with Anthony Patterson having to pull off a string of fine saves to preserve Sunderland's lead.
The hosts eventually got a deserved goal in the 93rd minute though, as Femi Azeez stabbed home Aidomo Emakhi's cross for his first Millwall goal.
It is a fourth consecutive draw for Sunderland, who sit above Sheffield United on goal difference, while Millwall stay eighth.
Elsewhere, Middlesbrough moved back into the playoff places with a thumping 6-2 victory over Oxford United.
A hat-trick from Emmanuel Latte Lath, a double from Finn Azaz and another from substitute Tommy Conway saw Boro score six goals in an away league game for the first time in 64 years.
Greg Leigh had given the hosts a surprise lead, and though Dane Scarlett halved the deficit with his second-half goal to make it 4-2, they could not mount a comeback, leaving them 18th in the table, while Middlesbrough jumped up to fifth.
Meanwhile, Luton Town eased some of the pressure on manager Rob Edwards with their 1-0 win over struggling Hull City to move out of the drop zone.
Mark McGuiness scored the only goal of the match in the 33rd minute, brilliantly volleying his maiden Hatters goal in to help Luton move up to 16th.
Hull could not find a winner, despite Joao Pedro hitting the post in the first half, and they dropped into the relegation zone as their winless run extended to eight matches.
Norwich City are on a run of seven games without a win after playing out an entertaining 2-2 draw with West Brom.
Emiliano Marcondes and an own goal from Torbjorn Heggem gave Norwich the lead after Mason Holgate's early opener, but Josh Maja's 10th goal of the campaign cancelled out their lead just before half-time to earn them a point.
Leeds moved level on points with Sunderland 24 hours earlier with victory over Watford, but Regis Le Bris' men responded well thanks to Romaine Mundle's superb winner shortly after the hour mark.
The visitors had earlier taken the lead 10 minutes into the second half through growing talent Chris Rigg's third goal of the campaign, following an error from Tahith Chong, before Elijah Adebayo swiftly levelled with a header from close range.
But Mundle's fine finish into the far corner from outside the box secured an eighth win in 11 matches for Sunderland, who have a small buffer at the summit.
Burnley join Leeds in sitting three points off the pacesetters after drawing 1-1 against Hull City at the MKM Stadium to make it eight games without defeat.
Xavier Simon opened the scoring for Hull just before half-time with a heavily deflected shot that got the better of James Trafford.
Scott Parker's visitors found an equaliser through Zian Flemming 13 minutes from time - the Dutch midfielder powerfully heading in Jaidon Anthony's back-post cross - but they wasted a big chance to take all three points as Anthony missed from close range in added time.
Elsewhere on Wednesday, Sheffield United fell to a second successive defeat without scoring as they went down 1-0 to Middlesbrough at the Riverside Stadium.
Substitute Emmanuel Latte Lath met Finn Azaz's cross in the 80th minute to head in the only goal of the game, after Jesurun Rak-Sakyi had earlier had a shot blocked on the line by Luke Ayling.
The Blades drop to fifth in the table, level on points with West Brom and Blackburn Rovers either side of them, after the pair played out a 0-0 draw.
Albion went closest to scoring in a game of minimal chances as their winless run stretched to five matches, while Blackburn dropped points at home for the first time this campaign.
The day's other game saw Romain Esse's 13th-minute strike earn 13th-place Millwall a 1-0 win over Plymouth Argyle at The Den, with the visitors dominating possession but not making it count for anything as they stay two points above the relegation zone.
Borja Sainz had given the Canaries a ninth minute lead before Tommy Conway's brace and Finn Azaz's close range effort had Boro in the ascendency at the interval.
Conway then saw his penalty saved by George Long after Jose Cordoba fouled Riley McGree, with that moment proving pivotal in the outcome of the contest.
Sainz doubled his tally two minutes after Boro's spot-kick with a stunning effort that kissed the underside of the crossbar, before an own-goal by Seny Dieng drew Norwich level.
The Canaries finished the game with a man less after captain Kenny McLean was shown a straight red card late on, but Middlesbrough were unable to find a winner.
Despite letting a two-goal lead slip at Carrow Road, Carrick was pleased with his players' efforts in a game he felt his side edged.
"I thought we were fantastic for the most part, we showed what a good team we are and played some really good football," Carrick told BBC Radio Teesside.
"We conceded three goals, the third wasn't nice at all but the other two, he put them in the top corner from distance and if they’re going to score like that from there, there's only so much you can do [to stop it].
"I thought we were pretty much the better team throughout, [although] the momentum swung a little bit towards the end.
"That’s two games against really good, top opposition in this league and we’ve been the better team in both games.
"Today was a test in terms of going a goal down but the confidence we showed and togetherness to get through that was top-class."
For Norwich, meanwhile, the draw ensured they maintained their 11-month unbeaten home record.
A win would have put them fifth in the table, but they remain eighth on the same number of points as ninth-placed Boro, both of them still one point adrift of the top six.
But it was a contest they were perhaps fortunate to claim a point from. The Canaries ended the contest with an expected goals (xG) total of just 1.1 compared to the visitors' 3.86.
"When a game is that hectic, with so many situations in it, then it's hard work for me from minute one to minute 90," Johannes Hoff Thorup told BBC Radio Norfolk
"We had to be very specific at half-time about what was important for us [to do], very specific with in-game communication to the players because there were so many details to put focus on.
"The moments we have when we are calm on the ball, especially in their half, the spaces we highlighted before the game opened up and we created chances, or at least got into some dangerous positions."