自1930年1月至1937年6月,姜茂生曾先后征战右江苏区,参加过多次战斗,先后任过排长、代班排长、团政治宣传员、连政治指导员、闽西南交通站长等职。1937年,姜茂生先是担任闽西人民抗日义勇军第一纵队三支队连政治指导员。1938年1月,任新改编的新四军第二支队四团二营四连连长,北上皖南抗日前线。1939年1月,任新四军第二支队独立营政委。12月,任新四军皖苏支队第一营政委。
1940年8月,任新四军三纵八团参谋长、团长。
1941年,日本侵略军向抗日根据地进行大“扫荡”,姜茂生指挥特务团打跨了进攻盐城的日伪军,完成保卫新四军军部的任务。5月,被派往盐城华中抗日军政大学第五分校学习,1942年2月毕业后,调任抗大九分校教育长,1943年8月,任苏中军区教导团参谋长。
1946年5月,苏中军区第一旅编入华东野战军第六纵队,姜茂生指挥的十一团改为十八旅五十二团,姜茂生仍任团长,率团参加苏中“七战七捷”和鲁南战役。9月,任旅参谋长。10-12月,率部在涟水城市抗击国民党军“五大主力”之一七十四师的进攻,给敌予重创。1947年,调到华东党校学习,10月结束。11月,奉命率部北上山东。1948年,先后参加瞧杞战役、济南战役和淮海战役。淮海战役结束后,代理两广纵队党委书记。
1949年10月,两广纵队渡江南下后,奉命随张云逸和雷经天回广西工作。
1950年1月,姜茂生任广西郁林军分区司令员,领导郁林地区清匪反霸斗争。1950年1月,任广西军区参谋长
1952年,任中南军区赴朝参战实习团总团副团长兼第一分团团长
1953年参加抗美援朝作战。回国后,到武汉中南军区干校高干班学习。
1955年被授予少将军衔,获二级八一勋章、二级独立自由勋章、一级解放勋章
1957年6月,任广西军区副司令员。
1985年12月25日在南宁逝世,终年74岁。