Hart, who is contracted to City until 2019, spent last season at Torino after it became clear he did not feature in Pep Guardiola's plans.
A haphazard debut campaign in the Premier League from Claudio Bravo did not signal a way back for the fans' favourite at the Etihad Stadium, with Guardiola bringing in Ederson for £35 million ($58.56 million) from Benfica in June.
It left the 30-year-old looking for another escape route and he suggested a move was close by posting a picture of himself on a Virgin Train – the service operator between Manchester and London – to Instagram on Sunday.
Hart proved popular with the Torino fanbase last season, but endured mixed form in Italy's top flight, making five mistakes that led directly to opposition goals.
He will join long-time City colleague Pablo Zabaleta at London Stadium after the Argentina right-back joined Slaven Bilic's men on a free transfer.