被释放回国，并于1289年在列蒂被教宗尼古拉四世加冕为国王。其后卡洛二世致力从亚拉冈手中夺回西西里岛，可惜最后以失败告终，他最终承认佩德罗一世的第三子费德里科为西西里国王，并将女儿嫁给他。卡洛二世的长子卡洛·马特罗先死。按继承法，卡洛·马特的儿子查理·罗贝尔将成为继承人，但卡洛二世偏爱第三子罗贝托，希望由他继承王位，故鼓动查理·罗贝尔凭借祖母的匈牙利血统夺取匈牙利王位，并借机剥夺查理·罗贝尔及其子孙对那不勒斯的继承权。1309年5月5日，卡洛二世于那不勒斯逝世，罗贝托继位。