Jonathan Woodgate's strugglers conceded three times before half-time on what was an afternoon to forget.
Here's an assessment of how the Boro players performed over the course of 90 minutes.
Dejan Stojanovic 5 - Was left horribly exposed on a number of occasions. Beaten three times but can't be blamed for any of the Swansea goals.
Jonny Howson 4 - Endured a torrid afternoon. The visitors had plenty of joy down their left in the first half as the former Leeds United man struggled to cope at right-back.
Ryan Shotton 4 - Another Boro defender who looked all at sea as City raided at will down his side of the pitch. The fact that he was replaced at half-time says it all.
Dael Fry 4 - Also struggled during the first half. Slightly more solid after the interval.
George Friend 4 - Made a couple of important interventions over the course of the game, but he almost gifted Swansea an early lead when he fell over, then gave away a penalty.
Paddy McNair 5 - Outclassed in the centre of the park by Matt Grimes and Connor Gallagher. A couple of decent deliveries into the box, but one wild shot at goal summed up his day.
Adam Clayton 4 - Like his midfield partner McNair, he just couldn't get to grips with a game that largely passed him by. Another who was hauled off at the break.
Lewis Wing 4 - Ineffective. Blasted a first-half strike into the top tier of the stand from the edge of the box. Marginally better during the second 45.
Lukas Nmecha 4 - A few bright moments. He whipped an inviting low centre across the six-yard box before half-time but undid much of his good work with some poor decision-making. Offered Howson very little protection.
Hayden Coulson 4 - Linked nicely with Friend down the left early on, but other than that he was very much a peripheral figure.
Rudy Gestede 5 - Won some headers in the first 45, but had nobody near him to benefit from them. Missed the target with a couple of aerial efforts.
Substitutes: Djed Spence (for Clayton 46) 5 - Offered a little bit more pace and energy without really doing any damage.
Patrick Roberts (for Shotton 46) 6 - Probably Boro's man of the match, though he was possibly lucky to escape with a yellow card following a reckless lunge. Looked lively and created a couple of decent openings with his quick feet.
Marvin Johnson (for Coulson 55) 5 - Did okay when he came on without really catching the eye.
Ashley Fletcher (for Nmecha 69) 5 - One promising burst look like it might take him in on goal, only for a heavy touch to let him down.
Britt Assombalonga (for Gestede 71) 5 - The contest was over long before he arrived on the field.