1920年毕业后转入斌业中学。国民革命军第15兵团副司令官兼大同守备指挥部总指挥,国民革命军
中将衔。
在斌业中学毕业后加入
晋绥军,历任晋军连司务长、排长、连长、营长等职。1927年任北方国民革命军警卫团团长,在平汉线对奉军作战。
第二次国内革命战争时期,1928年调任第8军某师师长兼多伦警备司令。1930年调任山西陆军第8军24师师长,参加了
中原大战,在
兰封对
蒋介石作战。1933年提升为山西整军会督练员,晋绥军军官教导团第4军官大队大队长,被授予国民革命军
少将衔。
1937年任国民革命军第7集团军第61军新编独立第2旅旅长。同年9月参加了
平型关大捷和
忻口战役。
奉
陈长捷之命,由金山铺开往红沟配合友军逆袭深入之敌,升任新一师师长,夺回
李仙洲丧失之阵地红沟,在南怀花与敌对峙。向9月任第61军新编独立第4旅旅长,11月改任第61军208旅旅长。
1945年调任太原19军副军长,第7集团军副总司令。
解放战争时期
1945年任山西晋北军事总指挥官。1946年1月部队缩编改任第19军军长。1947年提升为国民党第18兵团副司令兼
大同市军事指挥官,被授予国民革命军陆军中将衔。同年7月率部与中国人民解放军对抗,使解放军部队和地方均遭受很大损失。
1949年5月1日在
山西省大同率部起义,率部1万余人在接受人民解放军的和平改编后,当地受害群众纷纷向人民政府控告国民党第18兵团于镇河、
田尚志(暂编第38师师长)、
孟祥祉(大同行署主任)等将领的累累罪行。特别是其家乡
浑源县西留乡贾庄村的群众,派出20余人的代表前往大同城,强烈要求把于镇河押回家乡交群众斗争处理。由于对大同和平解放贡献较大,中国共产党、人民解放军和新政府给予政策上的宽恕,经过向群众进行解释和教育,取得了群众的谅解。为防止意外,解放军将于、田、孟等将领紧急转移到
察哈尔省省军区所在地
张家口市。
积极立功赎罪,自愿将其在太原的两处房院全部捐献给人民政府。
山西省人民政府遵照对起义人员既往不咎的政策,安排为
山西省人民政府参事室参事。