王恭,字孝伯,為光祿大夫王蘊的兒子,定皇后的兄長。少負美譽,清高過人。以門第高貴才能超拔而自負,常有做輔弼大臣的願望。與王忱齊名且有深交,仰慕劉炎的為人處世。謝安常說:「憑王恭的才品和門第,將來可以做一方諸侯。」曾經隨同其父從會稽來到京都,王忱拜訪他們父子,看見王恭坐著六尺長的竹蓆,王忱以為他肯定還有這種竹蓆,就向他索取。王恭即刻把這張竹蓆送給了他。以後自己則坐草蓆。王忱聽說後大為驚訝。王恭說:「我平生沒有多餘之物。」王恭就是如此簡樸直率。
王恭最初拜官為佐著作郎。歎道:「做官不做宰相,才志何足以施展!」於是以疾病為由辭謝不就。不久拜為秘書丞。轉任中書郎,未就職,適逢父喪守孝。喪期滿,拜為吏部郎,封建威將軍。太元年間(376~396),代替沈嘉任丹揚尹,遷中書令,兼太子詹事。
孝武帝因為王恭是定皇后的兄長,所以十分敬重他。當時陳郡人袁悅之以奸巧狡詐侍奉會稽王司馬道子,王恭將此情況告訴了孝武帝,因此孝武帝誅殺了袁悅之。司馬道子曾會集朝中士大夫,在丞相府裡置辦酒席,尚書令謝石因酒醉而唱里巷之歌,王恭正色道:「身為尚書省長官,留止諸侯王的府第,而大唱婬聲,何以讓朝廷百官傚法!」謝石十分惱恨他。淮陵內史虞珧的兒媳裴氏有道家服食之術。常穿黃色衣著,狀如天師,司馬道子非常喜歡她,讓她同賓客們一起談論,當時人們都為她降節禮敬。王恭高聲說:「不曾聽說宰相座中有行為不端的婦人。」座中賓客莫不感到坐立不安。司馬道子十分羞愧。其後孝武帝打算提拔當時有威信聲望者為藩國長官,便任命王恭為都督兗青冀幽並徐州晉陵諸軍事、平北將軍、兗青二州刺史、假節,鎮守京口。以前,都督以「北」字為號的多有不祥,因此桓沖、王坦之、刁彝一類人不接受鎮北的稱號。王恭上表辭讓將軍封號,以超常格受職為推托之辭,而實則是討厭這一名號,於是朝廷改號前將軍。慕容垂入侵青州,王恭派遣偏師抵抗慕容垂,失利,朝廷降號為輔國將軍。
及至孝武帝駕崩,會稽王司馬道子執掌朝政。寵信親近王國寶,把大權交託給他。王恭常正色直言,司馬道子很害怕王恭,也因此十分怨恨王恭。王恭前往皇陵祭拜孝武帝,完畢,歎道:「棟樑都還是新的,可已見亡國的徵兆了。」當時王國寶的堂弟王緒勸說王國寶,乘王恭拜見丞相會稽王之機,埋伏士兵殺掉他。王國寶不許。司馬道子也想使內外大臣和睦相處,對王恭推心置腹,希望彼此之間消除舊怨。王恭多不順從,每每談及時政,就義正辭嚴,聲色俱厲。司馬道子知道與王恭之間不可調和,便實施王緒的行刺之計,於是開始埋下國難的禍根。有人勸說王恭乘上朝之機率兵誅殺王國寶,但庾楷與王國寶同黨,其兵強馬壯,王恭擔心庾楷作對,不敢先發制人,便決定返回鎮所。臨別京城時,對司馬道子說:「天子居喪期間,執政宰相的重任,即使是伊尹、周公那樣的賢人也感到難以勝任,願大王親理萬機,採納忠言,遠離邪聲,放逐奸佞小人。」辭色十分嚴厲,因此王國寶等越加懼怕。朝廷任命王恭為安北將軍,王恭不受。於是王恭謀劃誅殺王國寶,派使者與殷仲堪、桓玄聯絡,殷仲堪假意應承。王恭得到回書後,大喜。便上書京師,直言道:「後將軍王國寶,憑婚姻連帶關係多次身居要職,卻不能感謝皇恩思圖效忠,以報答時世,而竟邀寵逞威,獨斷專行,將危及國家社稷。先帝升天之日,王國寶連夜私自進宮,準備篡改遺詔,幸賴皇后聰慧機智,丞相會稽王英明威武。所以其陰謀並未得逞。又將東宮現有衛隊併入自家府中,讒嫉自己的兄弟如同對待仇敵一樣。與其堂弟王緒結黨營私,凶狠狡詐,狼狽為奸,擾亂朝廷。此不忠不義之行已昭然若揭。以愚臣之忠誠,必將亡身殉國,因此王國寶等陷害愚臣非止一端。幸賴先帝明察,不聽讒言。從前趙鞅興兵,誅殺國君身邊的奸惡之徒。愚臣雖然低下無能,但怎敢忘卻這樣的大義!」疏表傳至京師,內外戒嚴。王國寶及王緒惶惶不知所措,採用王王旬之計,請求解除職務。司馬道子逮捕王國寶,賜他自盡,斬王緒於街市。為自己所犯過失向朝廷謝罪,王恭因此便退兵返回京口。
王恭開始直言上表,擔心起事不能獲勝。便任命前司徒左長史王貵為吳國內史,命令他在東部起兵。王國寶一死,王恭又命令王貵解散義兵卸去職務。王貵惱怒,率兵討伐王恭。王恭派劉牢之剿滅了王貵,並上疏朝廷請求貶職,詔令不許。譙王司馬尚之勸說司馬道子,認為諸侯藩鎮強盛,宰相權勢就會削弱,應多樹立親信以鞏固自身。司馬道子認為司馬尚之的建議有道理,便任命其司馬王愉為江州刺史,分割庾楷管轄之下的豫州四郡交給王愉統轄。由此引起庾楷的憤怒,庾楷派兒子庾鴻勸說王恭道:「司馬尚之兄弟專弄權術,想借朝廷聖威削弱諸侯勢力,如不以王國寶的前事為警戒,其形勢後果將難以預測。乘其陰謀未成,宜早考慮對付他們。」王恭以為有理,又將自己的意圖決策轉告殷仲堪、桓玄。桓玄等依從王恭,共推王恭為盟主,約定日期一同奔赴京師。
當時內外不和,消息阻滯不通,河流渡口巡邏盤查甚嚴,殷仲堪的信札通過庾楷傳送王恭,用斜絹作書,藏入竹箭裡,合上箭頭塗上油漆,庾楷送交給王恭手中。王恭打開書信,絹上文字古怪,不可辨識,以為庾楷有詐。又料想殷仲堪去年已未赴約,現在同樣無興兵之理,於是王恭決定提前起兵。屬下司馬劉牢之勸諫說:「將軍現在身為一方諸侯,滿懷忠貞報國之志節,丞相會稽王可比周公之尊貴,極負聲望。去年已殺王國寶、王緒,送交王貵的密書,這是真心佩服敬重將軍。近來所作所為,雖然不都公正合理,但並不算大過失。分割庾楷的四郡交付給王愉,對於將軍有什麼損害呢!舉兵反朝,怎可興第二次呢?」王恭不聽從,便上表朝廷以討伐王愉、司馬尚之兄弟為說辭。朝廷派司馬元顯及王王旬、謝琰等抵抗王恭。
王恭晚上夢見劉牢之坐在他的位置上,早晨起來對劉牢之說:「此事獲勝,就讓你做北府軍統帥。」派劉牢之率帳下督顏延先佔據竹裡。司馬元顯派人遊說劉牢之,以重利利誘他,劉牢之便斬殺顏延投降於朝廷。這一天,劉牢之派其女婿高雅之、兒子劉敬宣,乘王恭閱兵之際,率精銳騎兵攻擊王恭。王恭敗北,準備返回,高雅之已關閉城門。王恭便同其弟王履隻身單騎奔向曲阿。王恭許久沒有騎馬,以致大腿磨破生瘡,無法再行走。曲阿人殷確,是王恭從前的參軍,用船運載王恭,將他藏在蘆葦席之下,準備投奔桓玄。到長塘湖,遇見商人錢強,錢強早先與殷確有怨,便將這一秘密告訴了湖浦尉。湖浦尉逮捕了王恭,確並將他押送京師。司馬道子聞知王恭將被送到,打算出來與他交談,當面斥責其過失,而不打算殺他。當時桓玄等人率部已達石頭城,司馬道子擔心有變,便在建康的倪塘將王恭斬首。王恭的五個兒子及其弟王爽、王爽的侄兒秘書郎王和及其親信孟璞、張恪等皆被處死。
王恭個性坦率耿直,深懷大義,富有氣節。讀《左傳》至「奉王命討不庭」處,常為之釋卷而感歎。其為人度量不寬廣,不善隨機應變。自統領北府兵,雖然以簡易仁愛治政,但高自尊貴,與部下隔閡很大。不熟悉用兵之道,尤其篤信佛教,驅使百姓,修建佛寺,務求壯麗,士人百姓怨聲載道。臨受刑時,還吟誦佛經,自己理順鬍鬚鬢髮,毫無懼色,對監刑者說:「我王恭愚昧無知,過於相信他人,以致有今日敗局,但我的內心,豈是不忠於國家社稷!百代之後人們是知道我王恭這個人的。」死後家無錢財布帛,惟有書籍而已。為有見識者所感傷。
王恭姿容儀態美麗,人多愛慕,有人注視王恭稱讚說:「濯濯如同三春月下柳。」曾身披鶴氅裘,在雪中跋涉,孟昶窺見雪中行走的王恭,驚歎道:「這真是神仙中人啊!」最初被抓,遇見從前的同僚戴耆之為湖孰縣令,王恭私下告訴戴耆之說:「我有個庶子未被盤查出來,藏在乳母家中。請你幫我送到桓南郡家寄養。」戴耆之便將王恭庶子送到夏口,桓玄代為撫養,並為庶子設立喪庭讓他祭弔王恭。及至桓玄執政,上表朝廷為王恭辯護申冤,朝廷下詔追贈王恭為侍中、太保,謚號為忠簡。追贈王爽為太常,王和及兒子王簡皆為通直散騎侍郎。殷確為散騎侍郎。腰斬湖浦尉及商人錢強等。王恭庶子王曇亨,義熙年間(405~418)任給事中。