El Kaddouri begann seine Karriere beim Koninklijke Diegem Sport und wechselte 2006 in die Jugend des RSC Anderlecht. Dort gehörte er in der Saison 2007/08 dem Profikader an, kam jedoch zu keinem Einsatz. 2008 wechselte er zum italienischenZweitligistenBrescia Calcio, für den er am 29. März 2009 beim 2:2 gegen die AS Livorno erstmals in der Serie B zum Einsatz kam. Die Spielzeit 2010/11 spielte er auf Leihbasis beim FC Südtirol, für den er 31 Spiele (zwei Tore) in der drittklassigen Lega Pro Prima Divisione bestritt.
Nach seiner Rückkehr nach Brescia reifte El Kaddouri in der Saison 2011/12 zum Stammspieler und kam auf 38 Ligaspiele, in denen er sieben Tore erzielte. Im Juli 2012 wechselte er zum ErstligistenSSC Neapel, bei dem er in seiner ersten Saison auf sieben Ligaeinsätze sowie vier Einsätze in der Europa League kam. Zur Spielzeit 2013/14 wurde er für zwei Jahre an den Ligakonkurrenten FC Turin verliehen, mit dem er 2013/14 ebenfalls in der Europa League spielte. Im Juli 2015 kehrte El Kaddouri nach Neapel zurück.
Ende Januar 2017 wechselte El Kaddouri zum Ligakonkurrenten FC Empoli. Ab der Saison 2017/18 spielte er sechs Jahre bei PAOK Thessaloniki. Dort gewann er dreimal den nationalen Pokal sowie in der Saison 2018/19 die Meisterschaft. Nachdem sein Vertrag im Sommer 2023 nicht mehr verlängert worden war, war El Kaddouri ein halbes Jahr ohne Verein, ehe ihn am 5. Januar 2023 der rumänischeErstligistCFR Cluj verpflichtete.
Da El Kaddouri Doppelstaatsbürger ist, war ein Verbandswechsel möglich und er konnte mit der marokkanischen U23-Nationalmannschaft im Sommer 2012 an den Olympischen Spielen in London teilnehmen. Dort kam er in der Gruppenphase zweimal zum Einsatz, die er mit der Mannschaft auf dem dritten Platz beendete. Am 14. August 2013 debütierte er bei der 1:2-Niederlage im Freundschaftsspiel gegen Burkina Faso in der marokkanischen A-Nationalmannschaft. Sein erstes Tor erzielte El Kaddouri am 23. Mai 2014 bei einem 4:0-Sieg gegen Mosambik.[2]