1915年12月19日,蔡锷到达云南昆明后,受到热烈欢迎。他的到来加速了反袁护国战争的爆发。蔡锷到昆明的当天,就向唐继尧介绍了袁世凯政权重重的内部矛盾,分析了全国的反袁形势,使唐继尧坚定了反袁的信心。
此时,形势又进一步明朗,袁世凯已宣布接受帝制,当上了“中华帝国”皇帝。同时派特使到日本,准备出卖更多的国家利益,取得日本的支持。12月21日,唐继尧与蔡锷、李烈钧等召开秘密会议,谋划讨袁大计。在会上,蔡锷收到梁启超从南京转来的一封电报,大意是:“外交紧急,袁将卖国,请即发动,是首义之期,不宜在远。”看到梁启超的这样一封电报,以为江苏将军冯国璋已同情起义,于是唐继尧、蔡锷等决定提前宣布独立。会议决定先致电袁世凯,令其取消帝制,杀杨度等13人以谢天下,限24小时内答复,否则“即以武力求最后之解决”。同时还就组织临时政府和军事计划进行了讨论,做出了决定。
22日,唐继尧召集外地来滇参加反袁的人士和云南上校以上军官及一些行政官员,共同宣誓,兴师起义,以武力讨伐窃国大盗袁世凯。
23日,依原定计划,云南将军唐继尧和巡按使任可澄联名致电袁世凯,要求他取消帝制,惩办祸首,并限期于24日上午10时以前答复。同一天,唐继尧、任可澄、蔡锷、刘显世、李烈钧、戴戡等又照录电,通电各省。袁世凯皇帝宝座尚未正式坐上,哪是一个通电就肯退位的。于是25日,唐继尧、蔡锷、李烈钧等召集云南各界集会,宣布云南独立,通电讨袁。云南昆明各界人民欢呼雷动,全市举行游行,高呼打倒袁世凯、拥护共和的口号,“至夜乃息”。
云南宣布独立后,仿照辛亥革命和“二次革命”时的办法,设立都督府为云南全省最高军政领导机关,唐继尧任都督。本来,唐继尧提出以蔡锷为都督,自己当个前敌司令。但蔡锷想亲自出征讨袁,不想留守。唐继尧和蔡锷等决定反袁起义军称“中华民国护国军”,并决定将护国军扩编为三个军,分三路出师讨袁,以震撼全国。护国军由蔡锷任第一军总司令,李烈钧任第二军总司令官,唐继尧兼任第三军总司令。计划:第一军进军四川,一支向湖北宜昌、武汉进攻;另以一支向甘肃、陕西发展。第二军从云南入广西,一支东下广州,再东进向闽浙发展,另一支从广西梧州出桂林向湖南和湖北发展,攻占武汉。第三军从云南入贵州,直抵湖南辰溪、沅陵地区,再分两路向湖北武汉、襄阳发展。护国军准备分三个步骤实现武力讨袁目标:首先控制贵州、广西、四川三省;其次,再进占武汉、闽浙、秦陇;最后,以闽浙方向取守势,以秦陇方向逼袁军右侧,以进抵武汉的护国军主力北上。直捣北京。
护国军的战略构想过于宏大,分散了力量,给后来的作战带来诸多困难。当然其兵分三路的计划,也不是没有重点的。四川是护国军的主要作战方向,夺取四川是其首要战略目标,并由蔡锷率领的护国军主力第一军去实现这一目标。在护国军中,第一军人员的训练和装备都比较好,战斗力较强。随蔡锷入川的共有三个梯团(相当于旅,每个梯团下设两个支队。本来第一军还辖第四梯团,梯团长戴戡,后改任右翼军总司令官)9000余人,刘云峰、赵又新、顾品珍任梯团长。邓泰中、朱德等任支队长。
护国战争爆发前,袁世凯北洋政府直辖的军队有12个师32个混成旅、团,加上毅军、定武军、安武军、振武军等,总兵力达38万余人。另外,袁世凯还掌握着有几十艘舰只的海军。对于袁世凯来说,消灭区区护国军当不成问题。
因此云南宣布独立后,袁世凯态度十分强硬,立即下令褫夺唐继尧、任可澄、蔡锷的职爵,同时令在湖南岳阳的第三师师长曹锟、驻南苑的第七师师长张敬尧、驻江西南昌的第六师师长马继增率部向四川、湘西进发,准备对护国军作战。接着,袁世凯成立“征滇临时军务处”,亲自主持进攻云南的军事行动。他任命马继增为第一路军司令,率近4万兵力经湘西进入贵州,从东面进攻云南;任命张敬尧为第二路军司令,率4.2万余人从四川由北向南进攻云南。虎威将军曹锟被任命为第一、二两路军总司令,负责指挥前方作战。同时袁世凯还企图通过海上运兵到越南,沿滇越路抄袭昆明,遭法国驻华公使反对,只好作罢。于是袁世凯又考虑派北洋军假道广西进攻云南,但是被广西宁武将军陆荣廷以将损害商业为由拒绝。袁世凯不甘心,又生一计,任命广东振武上将军龙济光之兄龙觐光为云南查办使,唆使龙济光派龙觐光率粤军一师进入广西,以达陆荣廷同意一起攻滇(陆与龙是亲家至戚),抄护国军后路之目的。
袁世凯经过一番部署,认为北洋军已胜券在握,限曹锟在6个月之内,平定云南之“乱”。
双方调兵遣将,开战在即。