Mitrović werd op elfjarige leeftijd opgenomen in de jeugdopleiding van FK Partizan. Hij debuteerde in het seizoen 2011/12 in het betaald voetbal bij FK Teleoptik, een club waarmee Partizan een samenwerkingsverband had. Voor Teleoptik maakte hij zeven doelpunten in 25 wedstrijden in de Prva Liga. Mitrović tekende op 27 juni 2012 een vierjarig contract bij Partizan. Hij debuteerde voor de club in de voorrondes van de UEFA Champions League tegen Valletta. Negen minuten nadat hij inviel maakte hij zijn eerste treffer. Op 23 augustus 2012 scoorde hij ook in de laatste voorronde tegen Tromsø IL. Drie dagen later was Mitrović in zijn eerste competitiewedstrijd voor Partizan tegen FK Jagodina eveneens trefzeker. In de UEFA Europa League 2012/13 maakte hij een doelpunt in de groepsfase tegen Neftçi Bakoe.
Mitrović verruilde Partizan in augustus 2013 voor RSC Anderlecht. Hiervoor maakte hij op 1 september 2013 zijn debuut in het competitieduel tegen Zulte Waregem. Hij mocht na rust invallen voor Massimo Bruno. Op 14 september 2013 maakte hij zijn eerste twee doelpunten voor Anderlecht tijdens een 5–0 overwinning op KV Mechelen. Op 17 september 2013 debuteerde Mitrović voor Anderlecht in de Champions League in het groepsduel tegen Benfica. Dat seizoen werd hij met Anderlecht kampioen van België. Zelf droeg Mitrović hier aan bij met onder meer zestien competitiedoelpunten. Tijdens het seizoen 2014/15 werd hij met twintig doelpunten topscorer van de Eerste klasse. Hij verwierf negatieve bekendheid door zijn obscene gebaren na het scoren.
Mitrović tekende in juli 2015 een contract tot medio 2020 bij Newcastle United, de nummer vijftien van de Premier League in het voorgaande seizoen.[1] Dat betaalde circa 18 miljoen euro voor hem aan Anderlecht.[2] Hij speelde op 9 augustus 2015 zijn eerste wedstrijd voor Newcastle, een thuiswedstrijd tegen Southampton (2–2 gelijkspel). Een kwartier voor tijd verving hij de Senegalees Papiss Cissé.[3] Mitrović sloot zijn eerste jaar bij Newcastle United af met degradatie naar de Championship. Nadat directe concurrent Sunderland op 11 mei 2016 won van Everton werd het voor Newcastle één speelronde voor het einde van de competitie onmogelijk om nog boven de degradatiestreep te komen. Mitrović werd in 2016/17 met Newcastle kampioen van de Championship. Zodoende mocht hij na een jaar weer aantreden op het hoogste niveau. Coach Rafael Benítez gaf alleen de voorkeur aan een voorhoede met Dwight Gayle, Ayoze Pérez en nieuwe aankoop Joselu. Het gevolg was dat Mitrović in de eerste seizoenshelft van 2017/18 niet verder kwam dan zes invalbeurten.
Mitrović verruilde Newcastle in januari 2018 voor Fulham. Hiervoor speelde hij eerst een halfjaar op huurbasis, om vervolgens definitief over te stappen. Mitrović speelde 5,5 jaar voor Fulham en niet één keer twee seizoenen achter elkaar op hetzelfde niveau. Tegenover promoties naar de Premier League in 2017/18, 2019/20 en 2021/22, stonden degradaties in 2018/19 en 2020/21. Hij werd in zowel 2019/20 (met 26 doelpunten) als 2021/22 (met 43 doelpunten) topscorer van de Championship. Dat laatste aantal was het hoogste dat iemand ooit haalde in een Engelse competitie van 46 speelronden. Hij verbrak hiermee het record van Guy Whittingham uit 1992/93 (42 doelpunten).[4] Mitrović maakte in 2022/23 het hoogste aantal doelpunten dat hij ooit maakte in de Premier League: 14. Hij scoorde dat jaar tegen onder meer Liverpool, Arsenal en Tottenham Hotspur.
Mitrović werd met vier doelpunten topsorer voor Servië –19 in de kwalificatiereeksen voor het Europees kampioenschap in 2012. Op 3 juli 2012, op de eerste speeldag van het toernooi, werd hij in de wedstrijd tegen Frankrijk –19 met een rode kaart van het veld gestuurd, waardoor hij meteen de rest van het toernooi miste. Hij debuteerde op 7 juni 2013 op achttienjarige leeftijd voor Servië in de WK-kwalificatiewedstrijd tegen België (2–1 verlies). Hij begon in het basiselftal en werd na ruim een uur spelen vervangen door clubgenoot Marko Šćepović.[7] Op 6 september 2013 maakte Mitrović in de WK-kwalificatiewedstrijd tegen Kroatië (1–1) zijn eerste interlanddoelpunt. Mario Mandžukić opende enkele minuten na rust de score, met Mitrović tien minuten later als maker van de 1–1. Mitrović maakte deel uit van de Servische selectie die onder leiding van bondscoach Mladen Krstajić deelnam aan de WK-eindronde 2018 in Rusland. Daar sneuvelde de ploeg in de voorronde na een overwinning op Costa Rica (1–0) en nederlagen tegen achtereenvolgens Zwitserland (1–2) en Brazilië (0–2). Mitrović kwam in alle drie de WK-duels in actie voor zijn vaderland en scoorde één keer.