荀勖字公曾,穎川穎陰人,是漢司空荀爽的曾孫。祖父荀非木,是射聲校尉。父親荀月八十,早死。荀勖幼年寄托在舅父家裡。奇異早熟,十幾歲能寫文章。從外祖父魏太傅鍾繇說:「此兒將來會趕上他曾祖父。」長大後學識淵博,有從政的本領。在魏做官,被大將軍曹爽徵召為掾屬,又遷為中書通事郎。曹爽被殺,他的門生故吏都不敢去收屍辦喪,荀勖獨自去處理喪事,其他人才敢跟著去。後又做安陽令,轉為驃騎從事中郎。荀勖受百姓愛戴,安陽人為他立了生祠。提升為廷尉正,參與文帝大將軍軍事謀劃,賜爵關內侯。轉為從事中郎,兼記室職。
高貴鄉公率兵攻文帝時,大將軍掾屬孫佐等守閶闔門。文帝之弟安陽侯司馬干聽說發生兵變,要進閶闔門,孫佑對司馬干說:「還沒有人進這個門,可從東掖門進去。」司馬干進去後,文帝說他來得太晚了,司馬干將來遲的原因說明後,文帝欲將孫佑處以滅族之罪。荀勖進諫說:「孫佑不讓安陽侯進門,確實應深受責備。然而事情總有順心的不順心的,用刑輕重不能以喜怒為轉移。成卒有罪,刑只及於本人,而孫佑卻要全族誅滅,恐怕義士們會有議論的。」於是只免孫佑為庶人。
當時官騎路遺請求作為刺客入蜀行刺,荀勖對文帝說:「明公您以至公之道治理天下,應舉正義之師以伐叛賊,用行刺的辦法去除賊,這不是以德服遠人,也不能為四海之人做榜樣。」文帝認為這個意見很好。
鍾會在蜀謀反,沒有得到確實消息,只是外人傳聞,文帝平素待鍾會甚厚,不相信他會謀反。荀勖說:「鍾會雖然受了您的恩,然此人不能看作是得恩而思義的人,不能不早作戒備。」文帝立即出鎮長安。主簿郭奕、參軍王深認為荀勖是鍾會的從外甥,幼年在舅家長大,勸文帝將荀勖貶出去。文帝不聽,並且使荀勖與自己同車陪坐,像原來一樣對待他。在此之前,荀勖進言:「伐蜀應以衛馞為監軍。」及平蜀後發生鍾會叛亂,有賴於衛馞才得平息。鍾會被平定後,回到洛陽,荀勖與裴秀、羊祜共管國家機密。
當時將要派使者出使東吳,讓當時文士草擬與孫皓書,文帝選用了荀勖所作的。孫皓接書後回報願意和親通好,文帝對荀勖說:「君以前作的那封書使吳順服,真是勝過十萬大軍啊!」文帝即晉王位,以荀勖為侍中,封安陽子,食邑一千戶。武帝受禪讓即帝位,改封為濟北郡公。因為羊祜辭讓封爵,荀勖也辭讓接受封爵。拜為中書監,加侍中,領著作,與賈充共同制定律令。
賈充將要去鎮守關中,荀勖對馮..說:「賈公遠放外任,我等在朝會失勢。太子的婚事未定,若使賈充的女兒為太子妃,則賈充自然會留在京師任職了。」於是荀勖與馮..找機會在武帝面前稱道:「賈充女才色絕世,若納入東宮,必然能扶助未來人君,有像《詩經·關雎》所歌頌的后妃之德。」太子的婚事就這樣定下來了。此事甚為當時正直之士所憤恨,譏諷荀勖是奸佞諂媚之徒。過了很久,又晉位為光祿大夫。
荀勖曾掌管音樂,他所修訂的音律流行於世。當初,荀勖在路上聽到趙地商人的牛鈴聲,識辨其中音律。掌管音樂之後,音調不能協調,對人說:「得到趙地的牛鈴音調就會協調了。」即下令讓郡國都送牛鈴來,果然得到音調和諧的牛鈴,調好了音律。荀勖曾在武帝旁邊進飯,對在座的人說:「這飯是受過勞苦的柴燒成的。」在座的人都不相信。武帝派人問廚師,廚師說:「是用舊車腳燒的飯。」舉世都佩服他明智多識。
不久任秘書監,與中書令張華一起按照漢劉向的《別錄》整理古籍。又立書博士,設置博士弟子,教習書法,以鍾繇、胡毋敬的為規範。
咸寧初年(275~280),與石苞等並為開國功臣,列入銘功配饗的元勳。王睿上表請求伐吳時,荀勖與賈充堅決諫阻,以為吳不可伐,武帝沒有聽從他的意見,而伐吳果然成功。因荀勖專管詔命,論功封其一子為亭侯,食邑一千戶,賜絹千匹。又封其孫荀顯為穎陽亭侯。
汲郡古墓中古文竹書被發現後,皇帝下詔讓荀勖編撰整理,成為《中經》,作秘書收藏。
當時朝中議論讓王公們都到封國就職,武帝以此事問荀勖,荀勖回答說:「諸王公多已任都督之職,若使其回封國,則都督地方之任廢棄。按封國治理,必然分割郡縣,人心戀眷鄉土,必因此而心意不順。封國都要置軍隊,官兵還要供封國使用,守邊的軍隊就會不足。」武帝讓荀勖再作考慮,荀勖又陳述說:「如果按照詔書倣傚古代諸侯選拔人才,使軍務與政令合一,在封國地域都督軍務,則詔書旨意是對的。至於將固定的封疆割裂開,而又親疏不同,這當然也是好的。然而使舊土割裂,恐怕會發生動盪,必使人心急促生變。我審慎思慮,私下認為還是應依原制不動。若遇到某種情況,不得不轉移封地,只要不至於分割土域,損奪封國之利,是可以相宜行事加以節度的。五等封國行於遠古,今日實不成制度,只是虛名,事實上和舊時的郡縣鄉亭的封制無異。若匆忙改變,恐怕將成遺憾。當今先解決大的問題,五等爵制問題可等以後再裁定。凡事雖有經久而更加完善者,而臨時有不得不解決的問題,也不可忽視。」武帝認為荀勖的意見允當,很多地方都聽從他的。
當時朝中又議論裁減州郡縣官吏半數去支援農業,荀勖提出意見認為:「省吏不如省辟,省辟不如省事,省事不如清心。昔日蕭何、曹參為漢相,懷清靜之心,百姓有『蕭何為法,覯若畫一』的歌謠,這是清心之本。漢文帝垂衣拱手而天下大治,幾乎不用刑法,這是省事的結果。漢光武帝合併吏員,縣官國邑設置官吏才及原來的十分之一,這是省辟。魏太和年間(227~233)派遣朝廷使者四出,精簡天下吏員,正始年間(240~249)也曾合併郡縣,這是省吏。今欲尋求根本,則應以省事為先。凡居官位者,務使知蕭何之心,以輔佐國家,大行教化。重義行,崇和睦,使以邪道得寵者不得居官位,則虛偽之行自然消逝,浮華之人會畏懼縮斂。重敬讓,尚知足,令賤者不妨害貴者,少者不欺凌長者,疏遠者不離間近親,新識者不離間舊友,小者不加於大者,婬行不破義舉,則上下相安,遠近之人互相信任了。官位不能以鑽營的手段得到,榮譽不能靠朋黨吹捧求得,則是非就會弄清,官人不會受迷惑了。去掉奇技,抑制異說,好改變舊規以僥倖獲非常之利者必加重刑,則官守其職,民心不會見異思遷了,事存則政繁,政繁則功廢。在位的官吏孜孜不倦,守職司者日夜不懈,雖是才智短淺之人,也能盡其職守。上下信任如金石之堅,即使有小餅失,也不會妨害國家大政,應忍耐寬容。簡省文牘案卷和細碎繁苛的條文,法令的施行,定使人民易於接受。得益如盼陽春,避罰如畏雷電。不能使細碎條令煩擾百姓,並為百吏所輕慢,不能朝令夕改,使百姓厭惡,如此則官吏竭誠盡職,百姓擁護國家法令。分職務而設官,委託政事以求成效。君子競爭向上存於心而不以力相爭,估量自己的才能接受職位,謀不出其位,則官無分外之業,政事少有奸詐了。這些都是我所說的省事之本。若無多事之弊,雖不省吏,天下人也認為是省吏了。如欲省辟,我認為九寺之職可合併於尚書,蘭台的事應交付三府。然而現行制度已歷多代,為世人所習慣,所以很久以來有這種想法而未敢提出。至於省事,還是以求實為善。若只作籠統的規定,都減少一半,恐怕文武眾官、郡國職責及事之興廢各不相同。凡發號施令,典則允當者可以使民安,無規律而雜亂者會使政道壅塞。凡到職臨事的人都要精察得失。使忠信明察的官長,裁決適中的舉措,列條上奏。然後全面斟酌,宜省者省,則令下必行,不可動搖。如不這樣,恐怕只是迷惑視聽,會造成前面省去,後面恢復,或更加繁雜,這也不能不重視。」荀勖議論政事的損益得失,大多類此。
太康年間(280~289),皇帝下詔說:「荀勖聰明通達,辨識天命所歸,有佐命創業之功,兼有博學多識之才。久任內職,功勳卓著,咨詢朝政,謀略允當。應登大位,輔助朝政。今以荀勖為光祿大夫、儀同三司、開府辟召,守中書監、侍中、侯如故。」當時太尉賈充、司徒李胤都已死,太子太傅又缺。荀勖上表陳說:「三公和太保太傅之職,應有恰當人選。若使楊珧為太保太傅,必可符合聖意。尚書令衛馞、吏部尚書山濤都可做司徒。若以為衛馞新任尚書令未便改任,則山濤更為合適。」武帝採納了這些意見。第二年秋,各州郡都有水災,兗州一帶尤其嚴重。荀勖上奏陳說應設立都水使者。此後門下啟通事令史伊羨、趙鹹為宮中舍人,掌管法令條文。皇帝下詔以此事問荀勖,荀勖說:「當今天下幸賴陛下聖德,四海為一,可望大道興隆,教化和睦,垂訓於將來。而門下官員上有程鹹、張惲,下有此類人物,欲以繁法苛令治國,這是我不能理解的。漢張釋之諫漢文帝,認為獸圈嗇夫不宜被任用;邴吉停車,闡明調和陰陽之理。此二人豈不知小吏也可施恩惠,只是更重視朝廷教化的推行。昔魏武帝使中軍司荀攸掌管刑獄,魏明帝時就將這一職務交付內常侍。據臣所知,明帝時只有劉泰所任的通事等官,不過與殿中官是一樣的。又論者都說應省辟簡事,而要求增加管理的人又相繼而來。很多人說尚書郎太令史不親手起草文書,都委託給書令史及幹事,真是吏多則互相依賴。增設掌文法的官職,恐怕只能會干擾台閣大臣的工作,損耗他們的精力,臣私下以為是不可行的。」
武帝平素知道太子愚鈍懦弱,恐以後給國家帶來禍亂,派荀勖、和嶠去觀察太子情況。荀勖回來後極力讚揚太子有德,而和嶠卻說太子還是以前那個樣子,於是天下人尊敬和嶠而鄙視荀勖。武帝將廢賈妃,荀勖與馮..等進諫請求,賈後才沒有被廢,當時議論者以為荀勖傾覆國家攪亂時局,是孫資、劉放之類的人物。然而荀勖做事小心謹慎,每有他所參與的詔令大事,雖已宣佈,他始終不說,不想讓別人知道他參與其事。族弟荀良曾勸荀勖說:「公失去眾人的信賴,您給別人做了好事應該說出來,那麼對您懷德感恩的人就會多了。」他的女婿武統也勸說:「應為自己的事經營安置一下,以便有人歸附擁戴您。」荀勖都沉默不應。回來對兒子們說:「作為人臣不守密則失掉自己的身份,樹私黨則背公事,是應該深為警戒的,你們也會官路亨通,應當懂得我的用意。」很久以後,皇帝讓荀勖守尚書令。
荀勖長期在中書之位,專管機密之事。失去此職後,心中悵恨不滿。任新職時有人去祝賀,荀勖說:「奪了我禁苑中鳳凰池的官署,你們還來賀我!」任尚書令時,考試令史以下官吏,核實其才能高低,那些不熟悉法令條例,不能解決疑難處理事務的人,都被遣出。武帝曾對荀勖說:「魏武帝說:『荀文若提拔善者,不提拔起來不休止;荀公達斥逐惡人,不趕走他們不罷休。』兩個令君的美德,希望您兼而有之。」在職月餘,因母喪上繳印綬辭職,武帝不許,派常侍周恢傳達旨意,荀勖這才奉詔履行職責。
荀勖久管機密工作,才思敏捷,能揣摩人主心思,不觸犯人主之意,所以能始終受到皇帝寵信,保其爵祿。太康十年(289)死。下詔追贈為司徒,賜棺木、朝服一具,錢五十萬,布百匹。派兼御史持節護喪,謚號為成。荀勖有十個兒子,做過顯官的有荀輯、荀藩、荀組。