본관은 청주(淸州). 본래의 성(姓)은 이씨(李氏)이다. 처음 이름은 이자림(李子琳)이며, 중간에 이가도(李可道)로 바꾸었다가 1029년(현종 20) 개경에 나성(羅城)을 쌓은 공으로 사성(賜姓)을 받아서 왕씨(王氏)라 하였다. 조상은 자세하지 않고, 부인은 개성군부인(開城郡夫人) 김씨(金氏)이다. 현종(顯宗)의 후비(后妃) 원질귀비(元質貴妃) 왕씨, 덕종(德宗)의 후비 경목현비(敬穆賢妃) 왕씨, 이자연(李子淵)의 첫째 아들 이정(李頲)과 혼인한 상당현군(上黨縣君) 왕씨 등 세 딸이 있다. 왕무숭(王懋崇)의 아들이라는 견해도 있다.
995년(성종 14) 지공거(知貢擧) 백사유(白思柔)가 주관한 과거에서 장원으로 급제하였으며, 서경장서기(西京掌書記)를 거쳐 화주방어사(和州防禦使)가 되었다. 1014년(현종 5) 김훈·최질 등이 난을 일으켜 집권하고 있을 때, 왕의 측근인 김맹(金猛)에게 이들을 제거할 방법을 알려주면서 권서경유수판관(權西京留守判官)에 올랐다. 다음 해에 왕이 서경에 행차하여 장락궁(長樂宮)에서 신하들에게 향연(饗宴)을 베풀었을 때, 군사를 동원하여 김훈·최질 등 19인을 제거하면서 그 정권을 무너뜨렸다.
1020년(현종 11) 상서우승(尙書右丞)에 임명되었다가 이듬해에 중추부사(中樞副使)·상서우승(尙書右丞)에 올라서 상주(尙州) 관내(管內) 중모현(中牟縣)에 나타난 사리(舍利) 5백여 과를 개경으로 모셔 왔으며, 그중에 50여 과를 현화사(玄化寺)의 주불(主佛) 가운데 안치시켰다. 이 무렵에 경주(慶州) 고선사(高僊寺)의 금라가사(金羅袈裟)와 불정골(佛頂骨)을, 그리고 창림사(昌林寺)의 불아(佛牙)를 가져와 내전(內殿)에 안치하였다.
1022년(현종 13)에 동지중추사(同知中樞事)를 거쳐 중추사(中樞使)·국자좨주(國子祭酒)가 되었으며, 1024년(현종 15) 호부상서(戶部尙書)에 임명되고 이듬해에 치성공신(致盛功臣)이 되었다. 또한 1027년(현종 18)에는 곽원(郭元)과 함께 참지정사(參知政事)가 되었다.
1029년(현종 20)에는 강감찬(姜邯贊)의 주청에 따라 이응보(李膺甫)·황보유의(皇甫兪義)·황주량(黃周亮) 등과 함께 개경에 나성(羅城)을 쌓았다. 그 공으로 검교태위(檢校太尉)·행이부상서(行吏部尙書)·겸태자소사(兼太子少師)·참지정사(參知政事)·상주국(上柱國)·개성현개국백(開城縣開國伯)·식읍(食邑) 7천 호에 오르고 수충창궐공신(輸忠創闕功臣)에 책봉되었다. 이때 왕씨(王氏)를 사성(賜姓) 받았으며, 그의 부인 김씨(金氏)도 개성군부인(開城郡夫人)에 봉해졌다.
1030년(현종 21) 내사시랑(內史侍郎)·판삼사사(判三司事)에 올랐고, 1031년(현종 22) 덕종(德宗)이 즉위한 뒤에는 유소(柳韶)와 함께 문하시랑(門下侍郎)·동내사문하평장사(同內史門下平章事)에 임명되었고 딸을 왕에게 납비(納妃)하였다.
이 무렵 거란(契丹)에서 성종(聖宗)이 죽고 흥종(興宗)이 즉위하는 과정에서 반란이 일어나자, 왕가도는 이 틈을 이용하여 압록강(鴨綠江)에 쌓은 성(城)과 다리[橋]를 허물고 억류된 우리 사신을 돌려주도록 거란에게 요구하고, 들어주지 않으면 절교하자고 주장하였다. 고려에서는 실제로 그 뜻대로 표(表)를 보내었으나, 거란이 들어주지 않았다. 이에, 왕가도의 주장대로 하정사(賀正使)의 파견을 중지하였다. 그리고 왕가도는 거란의 성을 공격해서 격파하자는 유소(柳韶)의 주장을 받아들여 출병(出兵)하자는 주장까지 펼쳤지만, 뜻을 이루지는 못하였다.
왕가도는 그 뒤에 병을 얻어 사직을 청하였으나 왕이 조정에 나오는 것을 면제해 주었다. 1032년(덕종 1)에는 감수국사(監修國史)에 임명되었으나, 고향인 청주로 내려가서 요양하다가 1034년(덕종 3)에 세상을 떠났다. 이에, 왕은 그의 장례를 관(官)에서 주관하여 치르도록 하였다.