EXCLUSIVE | By Liverpool correspondent Cam Downes

Liverpool have won the race to sign James Milner after reaching an agreement with the England star, Football Insider sources understand.

Milner will join Liverpool from Manchester City when his contract expires on 30 June after settling the terms of a deal with the Merseysiders in the last 24 hours.

The 29-year-old is poised to sign a £120,000-a-week, four-year-contract supplemented by a multi-million pound signing-on fee.

Football Insider revealed last month that Liverpool had offered Milner a five-year contract and that meetings with his representatives were scheduled following the end of the Premier League season in an attempt to persuade the versatile England international to move to Anfield on a free this summer. The plan was always to tie up the deal within weeks of the season ending.

He rejected a series of attempts by City to tie him to a new long-term contract, with the club upping the ante by offering Milner a deal reported to be worth a basic £130,000-a-week to keep him at Etihad Stadium.

City manager Manuel Pellegrini has made it clear that he wanted Milner to stay, describing him in April as a “phenomenon” and English football’s “most complete player”.

Liverpool chiefs want Milner to be joined at the club by Danny Ings, who is also out of contract this month and is understood to have already agreed personal terms with Liverpool.

Speaking in January, Anfield manager Brendan Rodgers admitted that he is an admirer of Milner. “James is a wonderful player,” said Rodgers. “He’s been an outstanding footballer since the time I saw him at Leeds as a young player.”

Milner’s ability to play in virtually any position, including central midfield, attacking midfield, full-back and even as a withdrawn striker made him a leading target for the Merseysiders.