1261年,李璮在没有通知任何人情况下,私自开辟了一条从京城直通山东的秘密驿道。次年正月,李璮的质子李彦简便通过这条驿道悄悄逃回了山东。李彦简的成功逃脱,让李璮不再有所顾虑,决定彻底反叛。他首先将军中的蒙古官员全部杀掉,接着将涟水、海州等城池奉送给南宋,正式投降,背叛了蒙古汗国。 在二月十五日,李璮的军队开始进攻蒲台。三天后,忽必烈得知消息,决定暂时放弃追击阿里不哥,转而下令讨伐李璮。过了几天,忽必烈下令处死李璮的岳父王文统及其家族。到了二月末,李璮终于占领了济南城。守城的万户张宏带着不到千人的守军撤退,进入附近山区,准备等待援兵。 当时,忽必烈向大司农姚枢询问如何应对李璮的战略。姚枢提出了三种策略:第一种是趁我军北伐还未归,沿着海岸线进攻燕京,封锁居庸关,震慑天下,这是最佳选择;第二种是与宋军联合,依靠地形打持久战,偶尔袭扰边境,使我军疲于应战,这种策略次之;第三种是攻占济南,等待山东各地的支持,最终被围困俘虏,这是最差的策略。姚枢分析,李璮很可能选择最差的策略。结果,几天后,济南被李璮攻占的消息果然传来。 三月中旬,忽必烈派万户阿术和史枢领兵前往济南。当他们来到临安附近时,恰逢李璮出城劫掠,二人立即带兵迎击,成功击败李璮的军队,歼灭敌军四千余人。李璮败退回城后开始坚守不出。三月下旬,万户韩世安带兵在高苑击败了叛军,并俘虏了李璮的部将傅珪。 到了四月,蒙军开始围困济南城。李璮几次尝试从城中突围,但双方经过多次激战后,蒙军逐渐占据上风。于是,武卫军统帅李伯祐和董文炳请求忽必烈派遣右丞相史天泽前线督战。 四月末,史天泽终于抵达济南城外。为了防止李璮突围逃走,他立即命令修建了一道长达六十里的围墙,将济南城彻底围困。到了五月中旬,围墙完成,李璮多次尝试突围但都未能成功。 有一天夜里,狂风暴雨突如其来,济南城西南五里处的历山下溪流水位暴涨,蒙军的防线被大水冲垮。负责驻守该地的蒙军万户史枢判断李璮会趁机发动夜袭,于是他用芦苇制作了几百根火把,埋伏在附近准备迎敌。 当夜深人静时,李璮果然派兵前来偷袭。虽然雨已经停了,但风势依然很强。蒙军将火把扔向李璮军队,火把在强风的助力下燃烧得更旺,李璮的军队顿时暴露在敌人眼前。史枢指挥弓弩手猛射,李璮军队一时陷入混乱,互相践踏,死伤惨重,最后狼狈逃回济南城。 与此同时,张柔的儿子张弘范也参与了围攻济南城。出征前,张柔特意叮嘱儿子:不要刻意避开危险的地方,越是危险的地方,越容易得到友军支援,相对也更安全,而且能积累更多战功。张柔与李璮认识多年,深知他狡猾多变,因此特别警告儿子,李璮会在你最放松警惕时给你致命一击,必须时刻准备应对。 在围城战中,李璮确实多次从不同方向突围,唯独没有攻击张弘范。张弘范察觉到李璮可能会选择出奇不意的进攻,便命令将士修建长垒,并加深加宽前方的壕沟,还打开东门,设伏两侧。 第二天夜里,李璮派兵偷袭张弘范的营地。李璮军带来的飞桥未能覆盖宽大的壕沟,许多士兵掉入其中。刚爬上壕沟,他们就遭到伏兵攻击,最终被全部歼灭。李璮的两名部将被俘,并向张弘范投降。 南宋初时并不相信李璮会背叛蒙古,直到他归还涟水、海州等地,并正式投降南宋后,才开始信任他,并任命他为节度使、齐郡王,恢复了李璮父亲李全的职务。宋朝还命令夏贵等人带兵北上支援李璮。 三个月后,宋军迅速推进,占领了徐州、邳州等地,甚至收复了许多山寨。沿途的蒙军守将要么战死,要么投降。 四月,万户韩世安在滨州丁河口击败了宋军的一支队伍。五月,蒙军在元帅按脱、万户严忠嗣和郭侃的带领下开始反击。宋军在收复徐州后,采取了与蒙军相同的做法,烧毁了城中的民房,并迫使百姓随军南迁。郭侃指挥兵力南下,追回了被俘的军民。 到了六月初,宋军进攻沧州。宋将青阳梦炎奉命前往济南接应李璮,可他到达山东后,却不敢继续前进,很快就带兵撤回南方,导致李璮被孤立在济南城中。 随着时间的推移,济南城内的粮食告急,李璮仍未能突破蒙军的围困。为了稳定军心,李璮将民间女子分赏给将士,并强迫百姓交出余粮,甚至让士兵和百姓一起住一起吃。 济南城中的军民开始对李璮失去信心,许多人开始悄悄地从城墙爬下,投降蒙军。董文炳得知后,亲自来到城下,对城内的守军大喊:造反的只有李璮,其他人投降就是蒙军的将士,不要自寻死路! 最终,李璮失去了对城内局势的控制,绝大部分守军选择投降,甚至李璮最亲信的部将田都帅也投降了蒙军。七月下旬,几乎所有守军都向蒙军投降。蒙军在汉臣的劝阻下没有屠杀城内的军民。
意识到自己大势已去,李璮亲手杀死了自己的爱妾后,来到大明湖准备投湖自尽。然而,湖水太浅,他未能溺死。蒙军赶到后将李璮俘虏,并将他送至蒙军统帅哈必赤面前。为了稳定军心,哈必赤决定将李璮及其几十名心腹全部处斩。