早年经历
郭虾蟆的父祖世为保甲射生手。金宣宗时,他与兄郭禄大以善射应募从军。
兴定初年(1217年),郭禄大因功迁遥授同知平凉府事、兼会州刺史,赐姓颜盏,镇守会州。他随兄在会州军中。
兴定四年(1220年),西夏军攻打会州,郭禄大远远望见西夏带兵的将领和马均披挂金甲,出入阵中,距其大概有200步。禄大遥发一箭,正中将领咽喉,当即被射死。又射一人,箭贯穿他的双手,钉在树上,西夏军为之震惊。
后因寡不敌众,会州城被攻破。禄大和虾蟆都被俘虏。西夏人看他们箭术了得,把他们关起来。兄弟俩均誓死不屈。金廷知道这一情况后,特加嘉奖,但是不知道他们是否还活着,只好破格任用郭禄大的儿子伴牛官一阶,授巡尉职,以表彰他们兄弟的忠诚。
其后两兄弟打算伺机逃往会州,拔掉自己的胡须,被发觉,郭禄大遭西夏军杀害,郭虾蟆独自逃归。金宣宗感念郭禄大的忠诚,特下令再次升迁其子,遥授会州军事判官,郭虾蟆遥授巩州(金甘肃陇西)钤辖。谏议官请求嘉奖、任用郭禄大的弟弟,于是升迁郭虾蟆两阶,授同知兰州军州事。
大破西夏
兴定五年(1221年)年,西夏步骑万余人攻入定西, 郭虾蟆领兵击败之,斩首700,获马50匹,以功迁同知临洮府事(今甘肃临洮)。
元光二年(1223年), 西夏数十万步骑攻打凤翔(今属陕西),情况紧急。元帅赤盏合喜以郭虾蟆总领军事,郭虾蟆跟从赤盏合喜巡城时,看到护城河外一名西夏将领坐在胡床上,以为箭力无法到达,故意做出蔑视守城者的样子。合喜指给虾蟆看,问他能否射杀这个人。郭虾蟆测量一下远近,说:“可以。”郭虾蟆平时射箭,惯于射击敌人腋下护甲无法掩盖的地方,射无不中。只见虾蟆开弓、搭箭,等那名西夏将领一抬肘,一箭将他射杀。守城将士士气大振,西夏军则惊骇莫名。
击退西夏军后,郭虾蟆被遥授静难节度使,很快又改通远军节度使,授山东西路斡可必剌谋克,金廷派使者加以赏赐,并在各郡宣扬他的事迹。自金熙宗罢汉、渤海人猛安谋克后,只有女真、契丹、奚等族高官显贵才能授猛安谋克世爵。金宣宗末年,为嘉奖战功卓著的将领,汉、渤海等各族人皆可授此世爵。故郭虾蟆受此殊荣,并遍谕缘边诸郡。
这一年冬天,郭虾蟆与巩州元帅田瑞攻取会州。郭虾蟆率领骑兵500,身穿红色的衣服,从会州南山而下,西夏军仓卒应战,仰望他们误以为是神兵天将。城上有士兵在悬风版后举手的,被虾蟆一箭射去,手、版俱穿,又射死数百人。西夏军震恐,于是出降。会州被西夏占据了近四年,这时才被收复。
正大元年(1224年),田瑞据巩州叛金。金哀宗诏陕西两行省共同讨伐他。郭虾蟆率领士兵首先登上城墙,攻破巩州。田瑞开门逃跑,为他弟弟田济所杀。这一战,郭虾蟆斩首5000余级,因军功,被遥授知凤翔府事、本路兵马都总管、元帅左都监兼行兰、会、洮、河元帅府事。
正大六年(1229年)九月,郭虾蟆向金哀宗进献西夏马两匹,金哀宗下诏说:“你武艺超绝,这两匹马可以随你驰骋于战场,我骑它们就浪费了。既然已经进献,就算是皇家圈养的啦,就赐给你吧。”又加赐金鼎、玉兔鹘等许多珍贵的东西。
严词拒降
天兴二年(1232年),开封粮尽,累召援兵不至,将帅稀缺。蒙古大军随时可能围城。金哀宗弃开封逃至归德府(今河南商丘),次年又从归德府迁到蔡州(今河南汝南)。到蔡州后,金哀宗感到蔡州地处淮水支流汝水上,南与宋接壤,无险可守。又打算迁往巩昌府(即巩州),以粘葛完展为巩昌行宫。
天兴三年(1234年)年春正月,粘葛完展听说蔡州已经被攻破,为安定军心,率众守城以待金朝新立的皇帝,派人装成从蔡州来的使者,说是有圣旨云云。绥德州帅汪世显也知道蔡州城破,金哀宗自杀殉国。汪世显历来怨恨粘葛完展压制自己,想假传圣旨,发兵攻打巩昌。但是又畏惧虾蟆的威望,于是派人约虾蟆合力袭击巩昌。使者到,郭虾蟆对他说:“粘葛公奉诏为行省,号令谁敢不从。现在住上受围于蔡州,打算迁往巩昌。国家危急的时候,我们既然不能致死赴援,又不能率众奉迎,却要攻击粘葛公,先废主上将要迁幸的地方。主上将迁往哪里呢?你们的主帅若想背弃国家,那就让他自己去做好了,为何要加上我呢?”于是汪世显率兵攻破巩昌,劫杀粘葛完展,降蒙古军并遣使者二十余人劝郭虾蟆降,均被拒绝。
血战蒙古
金国灭亡后,西部州府无不归降蒙古,只有郭虾蟆坚守孤城近三年之久。
蒙古窝阔台汗八年(1236年)十月,蒙古大军并力攻城。虾蟆感到城将不保,仍决意死战到底,集州中所有金银铜铁,杂铸为炮,用以反击蒙古军,又杀牛马慰劳战士,烧毁自己的房子和积蓄,以示必死的决心,称:“别留下来给蒙古军。”日夜血战,拼死抵抗。蒙古军也无法很快攻破城池。军士死伤越来越多,眼看城破在即。郭虾蟆命人堆积柴草在州官署,召集家人和城中将校的妻女,关在一间屋里,准备亲自焚之。火越烧越大,郭虾蟆率领将士在大火前面拉满弓等待蒙古军攻到。城被攻破,蒙古兵蜂拥而至,战斗良久,士卒中有弹矢尽绝的,就挺身跳入火中。虾蟆站到大草堆上,以门板掩护,射出二三百箭,百发百中,箭射完了,就把弓和箭扔到火中,自焚而死。城中无人投降。 郭虾蟆殉难时,年仅45岁,当地人立祠祭奠他。靖远城隍庙故址即是该祠旧址,庙中城隍便是郭虾蟆。