The 27-year-old is currently on international duty but City have confirmed the deal has been completed following a successful medical in New York.
Sevilla confirmed the week before that they had agreed a deal with City for the World Cup winner.
Press Association Sport understands Navas has signed for an initial fee of £14.9million.
He will link up with City after the Confederations Cup in Brazil and a short holiday.
Navas told the club's website: "Manchester City is an exciting project and this is the right moment for me to take this step. I'm very happy with the opportunity and the decision.
"The Premier League is a competition where the football is very fast and will suit the way I play. I'm really looking forward to it.
"City have been successful in recent years and are continuing to make a great team and I'm honoured to now be part of it.
"I'm going to a great club in England and I want to continue developing my game there.
"The club has put a lot of faith in me and I want to repay them out on the pitch."
Navas believes there are exciting times ahead.
Asked about the reasons for his move, he said: "I won some important titles with Sevilla but the Champions League is something you always have in mind, also to enjoy the Premier League and to have a really strong year.
"Truth is this is a dream for me and a challenge to play for a club like Manchester City and fight for titles and everything that comes with that.
"Considering everything, it was the confidence that I could play there and the truth is I am very happy to play for such a big club.
"Individually, above all, City have so many good players and the idea of playing there with such amazing players and fighting for a title - because I feel we have a good team to do that."