Wales ended their IRB Junior World Championship campaign on a high with victory over Ireland to claim seventh place in Treviso, Italy.
Lewis Robling set the tone with a fourth-minute try, with Macauley Cook and Liam Williams also crossing to build a 21-14 lead at the interval.
Wales then took full control with tries from Cory Hill and Thomas Young.
Ireland, who scored two first-half tries, had the final say when Iain Henderson crossed in the last minute.
The victory gave Wales a record of three wins and two defeats in the competition, and matches their seventh-placed finish at last year's tournament.
But those victories were followed by two defeats - a humiliating 0-92 mauling at the hands of reigning champions New Zealand, and then a 20-34 reverse to Fiji.
"We put in a good performance in the end and we're really chuffed with the result," said Wales captain Cook.
"I'm really proud of the boys, they dug deep. After the loss to Fiji we needed pull together and pull out a performance. I thought we did that."
The defeat to New Zealand prompted Welsh Rugby Union head of rugby Joe Lydon to announce a review into Wales' performance at the tournament and the structure that underpins the nation's age-grade rugby.
Coach Richard Webster then voiced his concerns over the youth setup by claiming the players' development is being held back by a lack of competitive action for their club sides.
"We wanted a lot better [than seventh] coming into the tournament," added lock Blues, who is part of the Blues region.
"If we would have beaten Fiji we would have been going for fifth, or finished sixth at worst. But we were fighting for seventh place in the end and it could have been worse - we could have been eighth."
New Zealand will face England later on Sunday in the final, while France will battle against Australia for third place.
Wales U20: Steve Shingler (London Irish); Liam Williams (Llanelli), Iolo Evans (Scarlets/Llanelli), Lewis Robling (Dragons/Newport), Ross Jones (Ospreys/Bridgend); Matthew Morgan (Ospreys/Swansea), Jonathan Evans (Dragons/Newport); Will Taylor (Ospreys/Swansea), Kirby Myhill (Scarlets/Llanelli), Will Griff John (Blues/Pontypridd), Macauley Cook (capt, Blues/Cardiff), Lloyd Peers (Ospreys/Bridgend), Luke Hamilton (Blues/Glamorgan Wanderers), Thomas Young (Blues/Cardiff), Ben Thomas (Ospreys/Bridgend).
Replacements: Jamie Sollis (Dragons/Cross Keys), Lewis Smout (Blues/Pontypridd), Cory Hill (Blues/Pontypridd), Owen Sheppeard (Blues/Pontypridd), Lewis Jones (Blues/Pontypridd), Rheon James (Scarlets/Carmarthen Quins), Dale Ford (Scarlets/Llanelli).
Ireland U20: Andrew Conway (Blankrock/Leinster), Craig Gilroy (Dungannon/Ulster), Alex Kelly (UCD/Leinster), JJ Hanrahan (UL Bohemians/Munster), Andrew Boyle (UCD/Leinster); James McKinney (Queen's University/Ulster), Kieran Marmion (UWIC/Exile); Finlay Bealham (Belfast Harlequins/Ulster), David Doyle (UCD/Leinster), Tadhg Furlong (Clontarf/Leinster), Daniel Qualter (Buccaneers/Connacht), Iain Henderson (Queen's University/Ulster), Shane Buckley (Garryowen/Munster), Aaron Conneely (Galway Corinthians/Connacht), Jordi Murphy (capt, Lansdowne/Leinster).
Replacements: Jonathan Murphy (Banbridge/Ulster), James Tracy (UCD/Leinster), Michael Kearney (Clontarf/Leinster), Eoin McKeon (Galwegians/Connacht), Peter du Toit (UCD/Leinster), Paddy Jackson (Dungannon/Ulster), Brendan Macken (Blackrock/Leinster).