The Serbian defender joined City from Lazio in July 2010 and has made 99 appearances for the Blues in all competitions, scoring 15 goals.
The 28-year-old lifted his second Premier League title with City last season and was a key member of Manuel Pellegrini’s squad, making 24 league appearances.
“I am very happy and very proud of this new contract. I will give to this club probably the best stages of my football career and I am very happy that I continue with this club which feels now like my home,” smiled Kolarov.
“Last season I played a lot and I think I proved to people in the club that they can believe in me and the result was that I was offered a new contract and I was happy to sign.
“When we won two trophies last season, I was happy with what we did and I think it’s good for the club and for me that we are here now.
“I think we can do a lot more things in the future. We’ve won everything in England and I think we can do a lot more in Europe. So we’ll try to repeat what we did in England and try to win something in Europe. The most important thing in football is the result and I think we can do a lot more in the future.”