El 31 de agosto de 2012 fue transferido al Villarreal C. F. de España.[10] El 30 de septiembre hizo su debut en el Villarreal "B", la filial del club, ante el Badalona en el triunfo de su equipo por 1-0.[11] El 1 de diciembre, anotó su primer gol en un partido ante el Levante "B" que terminó con marcador de 1-1.[12] El 28 de marzo de 2014, el Villarreal oficializó en su página web el traspaso de Flores al club Universitario del Perú.[13]
En agosto de 2016 fue transferido al Aalborg B. K. de Dinamarca. Su debut oficial con la camiseta del cuadro danés se produjo el 15 de agosto en la victoria por 2-1 ante el Esbjerg.[17] Su primer gol lo anotó el 28 de agosto ante el Aarhus.[18] En su primera temporada disputó dieciocho encuentros y anotó un gol en la liga. En la Copa de Dinamarca anotó un gol en dos partidos y avanzaron hasta los cuartos de final donde fueron eliminados por el Midtjylland.[19] Durante la campaña 2017-18 disputó un total de veintinueve partidos del campeonato, donde anotó un gol (derrota 3-2 ante el Nordsjælland). En la copa nacional de esa misma temporada, avanzaron hasta los cuartos de final, tras ser derrotados por 3-1 por el Fredericia.[20] En dicha competición disputó dos encuentros y marcó un gol ante el Helsingør en los octavos de final.
Monarcas Morelia
En agosto de 2018, fue anunciado como nuevo refuerzo el club Monarcas Morelia tras la salida de su compatriota Raúl Ruidíaz. Debutó el 22 de septiembre en el empate ante Pumas. Su primera anotación se dio el 15 de febrero de 2019 ante el Monterrey por el Clausura de la Liga MX. Para la temporada 2019-A, el cuadro monarca logró clasificar a la Liguilla del Apertura, Flores anotó un gol en el partido de vuelta por los cuartos de final ante el León. Fue elegido como el mejor jugador de dicha fase. En semifinales, Monarcas se enfrentó al América y se impuso de local por 2-0; sin embargo, cayó de visita por el mismo marcador, el club capitalino clasificó a la final por estar mejor posicionado en la tabla del Apertura.[21][22]
Edison Flores fue fichado por el D. C. United de la MLS en el mes de enero de 2020 como jugador franquicia.[23] El 14 de enero de 2020, el D. C. United adquirió a Flores pagando una tarifa de transferencia récord del club de $ 5 millones.[24] Debutó el 29 de febrero, en una derrota 1-2 contra Colorado Rapids.[25] A fines de agosto, sufrió una colisión de cabeza a cabeza y estuvo fuera 6 semanas para reparar fracturas faciales.[26] Regresó de su lesión el 11 de octubre de 2020, en una derrota 1-2 contra el Chicago Fire.[27] El 1 de noviembre de 2020, contribuyó con sus primeras asistencias para el equipo, proporcionando dos en una derrota 3-4 contra el New England Revolution.[28] Terminó la temporada 2020 con 13 apariciones y 4 asistencias.
Para la temporada siguiente Flores contribuyó con una asistencia en la derrota 3-1 ante el Columbus Crew. En el siguiente encuentro anotó su primer gol en la MLS el 13 de mayo de 2021, asegurando una victoria por 1-0 sobre el Chicago Fire.[29] A fines de mayo, sufrió un desgarro muscular y estuvo fuera casi 11 semanas.[30] El 19 de agosto aportó con una asistencia en la derrota 3-2 ante el New England Revolution. A mediados de septiembre anotó un gol en la derrota 3-2 ante el Atlanta United.[31] Le siguieron dos partidos en donde dio una asistencia en cada uno, en las victorias por 4-2 ante el Cincinnati y 3-1 ante el Minnesota United.[32][33]
Flores inició su participación en la selección peruana con la categoría sub-17, con la cual disputó el torneo de fútbol de los Juegos Suramericanos de 2010 y el Campeonato Sudamericano de Fútbol Sub-17 de 2011 donde marcó tres goles en los cuatro partidos de la primera fase. Fue convocado para el Campeonato Sudamericano de Fútbol Sub-20 de 2013, el 10 de enero hizo su debut ante la selección de Uruguay, encuentro que culminó 3-3.[36] El 18 de enero marcó su primer gol ante Brasil en el triunfo por 2-0 que significó la clasificación al hexagonal final como primeros del grupo B.[37] Marcó su segundo gol en la última fecha del hexagonal final ante Chile, el partido terminó en empate a uno, resultado que no alcanzó para que Perú logre la clasificación a la Copa Mundial de Turquía.[38]
Selección absoluta
Flores con la plantilla titular que alineó contra Ecuador en Quito en 2017. El partido terminó 2-1 a favor de Perú. El centrocampista abrió el marcador.
El 20 de mayo de 2016, el entrenador Ricardo Gareca, lo incluyó en la nómina de 23 jugadores convocados para disputar la Copa América Centenario.[41] El estreno de la blanquirroja en la competición se produjo el 4 de junio de 2016 derrotando por 1-0 a Haití. Cuatro días más tarde empató por marcador de 2-2 ante su similar de Ecuador. Perú cerró su participación en la primera fase con una victoria por 1-0 ante Brasil.
En los cuartos de final enfrentó a la selección de Colombia con la que empató 0-0 en el tiempo reglamentario, finalmente fueron derrotados por 4-2 en la tanda de penales.[42] Edison fue titular en los cuatro partidos que disputó su selección y marcó un gol. En la segunda ronda de las eliminatorias para Rusia 2018 Flores anotó cinco goles, convirtiéndose (junto a Paolo Guerrero) en el goleador de la selección durante dicho proceso, a cuyo término Perú obtuvo la clasificación a la Copa Mundial de Fútbol de 2018.[43]
Copa Mundial de 2018
El 16 de mayo de 2018, el entrenador de la selección peruana, Ricardo Gareca, lo incluyó en la nómina preliminar de 24 jugadores convocados para la Copa Mundial de Fútbol de 2018.[44] Fue confirmado en la lista definitiva de 23 jugadores el 4 de junio.[45] En el torneo Perú integró el grupo C junto con Francia, Australia y Dinamarca. Disputó su primer partido mundialista el 16 de junio de 2018 en el Mordovia Arena frente a Dinamarca. Jugó los tres encuentros de la primera fase de titular,[46][47][48] aunque su selección no avanzó a la siguiente ronda tras haber culminado en el tercer lugar de su grupo con tan solo tres puntos.[49]
Copa América 2019
El 30 de mayo de 2019 fue convocado para la Copa América 2019 así como para los amistosos internacionales previos. El 29 de junio marcó el gol del triunfo en la definición por penales frente a Uruguay dándole el pase a la selección peruana a las semifinales del torneo. El 3 de julio marcó el primer tanto del encuentro que finalizó 0-3 frente a Chile, con el que disputaba la semifinal de la Copa; sin embargo, se retiró a inicios del segundo tiempo debido a una lesión. El combinado peruano consiguió el pase a la final de la competición. Tras finalizar la Copa, fue incluido por el portal brasileño GloboEsporte.com en el XI Ideal del torneo.
El 21 de diciembre de 2019 contrajo matrimonio con la médica peruana Ana Siucho, hermana del futbolista Roberto Siucho, tras cinco años de relación.[60] Tienen una hija llamada Alba, la cual nació el 27 de mayo de 2021.[61]
↑El resultado del partido fue de 2:0 a favor de Bolivia, sin embargo la FIFA le concedió la victoria por 0:3 a Perú por alineación indebida de Nelson Cabrera en el seleccionado boliviano.