荀伯子,颍川颍阴人。祖父荀羡,骠骑将军;父亲荀猗,秘书郎。
伯子幼时十分喜爱学问,博览经籍群书。但性情通达率意,喜欢旁杂的游乐,在乡里闲荡游玩,他也因此仕进无望。后始任驸马都尉、奉朝请、员外散骑侍郎。著作郎徐广看重他的才学,推荐伯子和王韶之同为佐郎,帮助编撰《晋史》以及撰写桓玄等人的传记。升任尚书祠部郎。
义熙九年(413)伯子上表皇帝:“臣听说咎繇死后,臧文深深为之叹息;伯氏夺邑,管仲称之为仁。功德崇高历经百代不会泯灭,滥加赏赐则是任何伟大朝代也不允许的。太傅钜平侯祜,明德通贤,作为臣子忠心不贰,辅佐君王,功至消灭吴国,但他没有后嗣,连祭祀的人都没有。汉朝因为萧何的大功,总保持他的后代得以继承流传。我认为对钜平侯的封赏应该和赞阝国相同。前太尉广陵公陈准是孙秀的党羽给淮南带来灾难,窃取大国之主的享受,可算是因罪为利。当时正值西朝政策刑罚失去公正,中兴之举也因此失去希望。如今王道新始,怎能不严格区分赏与罚呢?这样的话,广陵之国就应予以削除。前太保卫馞本来的爵位是萧阳县公,遭受灾难后,就增加了他的品级等第,一开始赠他为兰陵公又转任江夏。朝中许多大臣都没有一个合理的结局,卫馞功德并不突出,没有理由单独受到不合理的封赏,应该恢复过去的等级,以匡正国策。”皇帝下诏将此表交给门下省执行。
前散骑常侍江夏公卫..上表陈述自己的意见:“臣的祖先故太保卫馞,在魏咸熙年间,太祖文皇帝为元辅的时候封他为萧阳侯,大晋统一天下后晋爵为公,历位太保,总揽朝政,当时贾庶人及诸王专权,忌恨卫馞的忠节,因此楚王越假诏致使他遇难。前朝因为卫馞秉心忠正再加上攻打蜀国的功劳,所以追封他为兰陵郡公。永嘉年间东海王越食邑在兰陵,卫馞的封地换到江夏,户邑数量没有增加。臣的高祖散骑侍郎卫桑是卫馞的嫡孙,篡夺继承封爵,中宗皇帝让臣的曾祖前右卫将军卫崇承袭封爵,一直到臣。臣听说祠部郎荀伯子上表要贬降我的封爵恢复昔日的萧阳侯。因赵氏的忠诚恩宠延续数代,汉高祖开封,以泰山黄河为盟誓。恳请陛下考察臣祖上昔日的功勋,施行无所不至的恩泽,请将臣的上表对外公布以便定夺。”颍川陈茂也上表说:“祠部郎荀伯子上表指责我的七世祖太尉陈准祸害淮南,不应对其过度赏赐;推究此事可知因祖先剪除贾谧,被封为海陵公,此事发生在淮南遇祸之前,后来尽管广陵在混乱之际,我的祖先才开始蒙受厚遇,历位元、凯。后来出朝到边远的地方,仍然到了平州,也没有到削除封国的地步。这实在是因为祖先的功绩巨大,历代不灭的原因。如今圣明的君主统治天下,英雄豪杰辅佐致力于国家中兴,大家都对此没有什么疑议,不认为是过度赏赐。臣还未成年时就继承了祖上的封地和爵位,伏愿陛下考察祖上昔日的功业,表现您的怜悯和圣察。”皇上下诏将两人的表都交给门下省,最终并未施行。
伯子任世子征虏功曹、国子博士。因妻弟谢晦举荐而入朝任尚书左丞。后出朝补任临川内史。车骑将军王弘称赞他:“沉着稳重、朴质无华,有平阳侯的风度。”升任散骑常侍,又上表给皇帝:“臣见朝中百官的次序,陈留王在零陵王之上,我私下认为这有不恰当的地方。过去武王消灭殷商,将神农的后代封赏在焦,黄帝的后人封赏在祝,帝尧的后人封赏在蓟,帝舜的后人封赏在陈,夏的后人封赏在杞,殷的后人封赏在宋。杞、陆都是列国,而蓟、祝、焦却没有什么名声。这是褒奖推崇承继的祖先,优于远代的证明。所以《春秋》排列诸侯次序,宋在杞、陈之前,考察近代也有类似的情况。晋泰始元年,皇帝下诏赐给山阳公刘康子弟一人关内侯的封爵,卫公姬署、守侯孔绍各一个儿子为驸马都尉。又泰始三年,太常上博士刘熹等人议论,认为卫公姬署对于大晋朝应在三恪之内,要降称侯。臣认为零陵王位置应在陈留王之上。”皇上听从了他的意见。
调任太子仆、御史中丞,在职勤勉谨慎,有匪躬之称。他在朝中整肃威严,人们都惧怕他。凡是他想奏议弹劾的事,总是严加非议谤毁,有的还要涉及祖先,表现了他为人剀切刚直,但又夹杂着嘲戏的态度,所以世人都以此非难他。出朝补司徒左长史、东阳太守。元嘉十五年(438)死于官任上,时年六十一岁。伯子有文集流传后世。