Temendo o rápido sucesso de Lacanas, o imperador bizantinoMiguel VIII Paleólogo convocou João Asen à sua corte, concedeu-lhe o título de déspota e casou-o com sua filha mais velha, Irene Paleóloga, em 1277 ou 1278. O imperador então enviou-o à frente das forças bizantinas para tomar o trono búlgaro. Embora Lacanas tenha-o derrotado em várias ocasiões, ele acabou cercado por três meses na fortaleza de Drastar pela Horda Dourada, aliada dos bizantinos. Neste intervalo, os bizantinos cercaram a capital búlgara, Tarnovo. Quando os nobres búlgaros ouviram rumores de que Lacanas teria sido morto em combate, renderam a cidade e aceitaram João Asen III como imperador em 1279.
Para reforçar sua posição na capital, João casou sua irmã Kira Maria ao nobre búlgaro-otomanoJorge Terter, mas não conseguiu se fazer reconhecer em diversas regiões do país. Lacanas apareceu repentinamente perante as muralhas da cidade e derrotou as tentativas bizantinas de liberar João Asen. Desesperado, o novo imperador e Irene fugiram em segredo de Tarnovo com o tesouro búlgaro. Chegando em Mesembria, o casal embarcou para Constantinopla, onde o furioso Miguel VIII se recusou a recebê-los por vários dias por causa da fuga covarde.
Em 1280 ou 1281, João Asen III foi até a Horda Dourada para tentar conseguir apoio pela sua causa. Lacanas, pelo mesmo motivo, também estava na corte mongol. No final, Nogai mandou matar Lacanas e apoiou João Asen, que era seu concunhado (ambos eram casados com filhas de Miguel VIII), mas não conseguiu reconduzi-lo ao trono búlgaro. João retornou para as terras de sua família na Tróade e morreu ali em 1303.
Família
João Asen III e Irene foram os progenitores de uma grande e influente família, os Asan (ou Asanes), na corte bizantina, que prosperou adquirindo diversos cargos cortesões e provinciais até o final do império em 1453. Um dos descendentes de João, Irene Asanina (filho de seu filho Andrônico Asan), se casou com o futuro imperador João VI Cantacuzeno e, através da filha do casal, Helena, esposa de João V Paleólogo, João Asen III é um ancestral dos últimos imperadores bizantinos.
De seu casamento com Irene Paleóloga, João teve vários filhos: