Op 14 augustus 2012 tekende Çalhanoğlu een vierjarig contract bij Hamburger SV. HSV liet hem nog één jaar rijpen op huurbasis bij KSC. Çalhanoğlu staat vooral bekend om zijn vrije trappen.
In dienst van Bayer 04 Leverkusen, waar hij in juli 2014 een contract voor vijf seizoenen tekende, maakte hij op 16 september 2015 in de groepswedstrijd van de UEFA Champions League 2015/16 tegen BATE Borisov twee doelpunten (eindstand 4–1). Kort na rust schoot Çalhanoğlu zijn club naar een voorsprong, waarna hij ook een door scheidsrechter Danny Makkelie toegekende strafschop benutte. De Mexicaan Javier Hernández bepaalde de eindstand op 4–1, waardoor Bayer Leverkusen na de eerste speelronde aan de leiding ging in de groepsfase. Enkele weken eerder, op 22 augustus 2015, maakte Çalhanoğlu in de Duitse Bundesliga het enige doelpunt in de uitwedstrijd tegen Hannover 96. Het was zijn twintigste doelpunt in de Bundesliga, nadat hij voor Hamburger SV en Bayer Leverkusen in de voorgaande twee seizoenen negentien keer had gescoord.[1]
In de zomer van 2017 maakte hij voor 23,3 miljoen euro een transfer naar de Italiaanse grootmacht AC Milan. Hij kreeg het prestigieuze rugnummer 10 bij het team. In de 4 seizoenen dat hij er onder contract is, speelde hij 172 wedstrijden en maakte daarbij 32 doelpunten. Hij wist echter geen enkele hoofdprijs te pakken.
Na zijn contract bij AC Milan, tekende hij een driejarig contract bij aartsrivaal Internazionale waarmee hij de woede van de fans van AC Milan over zich heen haalde.[2] Zijn eerste seizoen pakte hij direct zijn eerste hoofdprijs op het hoogste niveau met Internazionale door Juventus te verslaan in de finale van de Coppa Italia. De landstitel ging dat seizoen uitgerekend naar zijn voormalige werkgever, die voor het eerst in 11 jaar de weer kampioen werd. In 2023 werd zijn contract verlengd tot en met 2027.
Çalhanoğlu was actief in diverse Turkse jeugdelftallen. Op 6 september 2013 maakte hij zijn debuut in het Turks voetbalelftal in een WK-kwalificatiewedstrijd tegen Andorra (5–0 winst). Hij verving na 82 minuten speeltijd Gökhan Töre.[3] In maart 2015 speelde hij een EK-kwalificatieduel tegen Nederland (1–1) en maakte hij zijn eerste interlanddoelpunt in een oefeninterland tegen Luxemburg (1–2 winst). Op 8 juni 2015 was Çalhanoğlu tweemaal trefzeker in een vriendschappelijke wedstrijd tegen Bulgarije (4–0). Met Turkije nam hij in juni 2016 deel aan het Europees kampioenschap voetbal 2016 in Frankrijk. Na nederlagen tegen Spanje (0–3) en Kroatië (0–1) en een overwinning op Tsjechië (2–0) was Turkije uitgeschakeld in de groepsfase.