Liverpool have signed Hull's Andrew Robertson in an initial £8m deal, with Kevin Stewart going the other way for what is thought to be a similar fee.
Scotland left-back Robertson, 23, joins on what the Reds describe as a "long-term contract" for a fee which could rise to £10m.
Midfielder Stewart, 23, signs a three-year deal with the Championship club.
Robertson said: "It feels a bit surreal. There are not more special clubs than Liverpool."
The defender joined Hull from Dundee United for £2.85m in 2014 and made 39 appearances last season as the Tigers were relegated from the Premier League.
He added: "When you grow up as a kid you dream of playing with big clubs such as Liverpool and to make that a reality is a dream come true for me.
"I just want to prove to people that I can do it at this level, and hopefully I manage to do that this season and do good things for this club."
Liverpool manager Jurgen Klopp added: "For Andrew, this is another big step on what has been a quite incredible personal journey in a very short space of time.
"I know our environment will benefit him and help him push himself even more than he has already. This is a player who does not limit his ambition."
United will receive about £600,000 from the deal - paid over the next two or three years - as a sell-on clause for a player they signed from amateur club Queen's Park in 2013.
Robertson is Liverpool's third summer signing following the arrival of Roma winger Mohamed Salah and Chelsea striker Dominic Solanke.
Eight other Premier League sides, as well as PSV Eindhoven and Sporting Lisbon, were reportedly interested in the left-back.
From amateur team to Champions League
Having played as an amateur in Scotland's fourth tier as recently as 2013, a move to Liverpool tops a rapid rise for Robertson.
Within nine months of moving from Queen's Park in Scottish League Two to Premiership side Dundee United, Robertson made his Scotland debut as a 19-year-old.
He was voted PFA Scotland Young Player of the Year in his only season at Tannadice - scoring five goals in 44 games - before moving to Hull.
Robertson became a regular for the Tigers - making 115 appearances in three seasons. He has twice suffered relegation from the Premier League, but also won promotion via the play-offs in 2016.
Stewart moves the other way
Former Tottenham player Stewart made 20 appearances for Liverpool, including 11 in the Premier League, and has played for Crewe, Cheltenham, Burton and Swindon on loan.
Stewart could make his first Hull appearance in Saturday's friendly against Benfica.
"I'm delighted to sign for the club. I can't wait to get started and get my boots on," he said.
"It's an exciting move for me and I'm looking forward to the challenge."
Find all the latest football transfers on our dedicated page.