Labour have taken back Gower, Cardiff North and Vale of Clwyd from the Conservatives in a strong general election night for the party in Wales.
It also fought off fierce Tory battles for Bridgend and Wrexham as has passed the 25 seats it won two years ago.
Those results represent a huge blow to the Tories who hoped to make big gains across Wales in the snap election ahead of Brexit negotiations.
But Welsh Secretary Alun Cairns held on to his seat in the Vale of Glamorgan.
The Tories also held on to Monmouth, Aberconwy and Carmarthen West and Pembrokeshire, with reduced majorities but increased their holds on Brecon and Radnorshire and Montgomeryshire.
Missing out on Bridgend and Wrexham is a huge blow for the Conservatives who failed to take two of their key target seats – which Prime Minister Theresa May visited during campaigning.
But the loss of the marginal seats of Gower and Cardiff North is a sign of the difficult night the Tories have faced.
Gower is a significant victory for Labour though after losing it for the first time in more than 100 years by 27 votes two years ago. Tonia Antoniazzi has taken the seat from Byron Davies with a majority of 3,269.
In the swing seat of Cardiff North, Anna McMorrin’s 4,174 majority at the expense of Craig Williams is the biggest in 20 years as her party claimed 28 seats in Wales.
The Conservatives have won seven seats – four fewer than in 2015.
Senior Welsh Conservative AM Darren Millar said the Tory campaign was “too personal” and focused too much of Jeremy Corbyn instead of presenting a “positive vision” for the future.
Elsewhere, Plaid Cymru maintained three as they held on to Arfon with Hywel Williams winning by 92 votes, and also Carmarthen East and Dinefwr, and Dwyfor Meirionnydd, but failed to gain its key Rhondda target seat from Labour, and also fell to third place in Ynys Mon.
The Liberal Democrats are waiting to find out if they have held on to their solo seat in Ceredigion.
- North east Wales results
- North west results
- Mid Wales results
- South east Wales results
- South west Wales results
Earlier, Brexit Minister David Jones, who retained his Clwyd West seat, had claimed an exit poll suggesting his party will lose enough seats to fall short of a majority could turn out to be wrong, but in Wales.
Indications suggest the turnout is higher that two years ago, with votes for both Conservatives and Labour increasing despite the overall results.
First Minister Carwyn Jones said Labour leader Jeremy Corbyn ran a “superb” campaign in a “volatile” environment.
“He’s spoken to members of the public,” said Mr Jones.
“He didn’t speak to meetings that were just full of people exactly like him, he took part in leadership debates, he listened to people and that was the difference in this campaign.”
Labour’s Stephen Kinnock, who was returned to his Aberavon seat, called the Tory campaign “the worst in living memory”.
Going into the election, Labour held 25 seats in Wales, the Conservatives 11, Plaid three and Liberal Democrats one.
Former Plaid Cymru leader Ieuan Wyn Jones, who failed to return to Westminster in the Ynys Mon seat, earlier said Plaid had been “squeezed in many parts of Wales”.
Neil Hamilton, UKIP’s Welsh assembly group leader, also said his party has “been squeezed” in this election where they have not picked up any seats. He came fourth in Carmarthen East and Dinefwr.
Senior Welsh Liberal Democrat Baroness Jenny Randerson, said the party has suffered at UK level, adding: “Your airtime declines and therefore it becomes much more difficult to make your case. It’s been a tough election.”
More From this publisher : HERE