京都府京都市の生まれ。本名・川口正臣。府立洛東高校では演劇部に在籍。小料理屋を営む母の希望で高校卒業後は板前修業をするが馴染めず、すぐに断念、仲間と劇団を結成する。この時期、小学校から一緒だった女性と結婚。のち一女をもうける。エキストラをしていた1966年、今村昌平監督「“エロ事師たち”より・人類学入門」の坂本スミ子の息子役に抜擢。甘え上手な若者の計算高さをいやらしいほど絶妙に演じて注目され、中島貞夫監督「893愚連隊」66のスケコマシ係、加藤泰監督「懲役十八年」67の姉思いの乱暴者と、甘いルックスと演技力で印象を残す。その後は小さな役が多かったが、TBS『柔道一直線』69の桜木健一演じる主人公のライバル・結城真吾役が大人気に。TBS『冬の雲』『春の嵐』71、日本テレビ『つくし誰の子』71、NHK大河ドラマ『国盗り物語』73の明智光秀役などのドラマで、二枚目俳優として一世を風靡する。映画でも斎藤耕一監督「花心中」73などで主演し、増村保造監督「動脈列島」75では新幹線転覆を企む犯人を熱演。以降は、恋愛もの、サスペンス、時代劇とテレビドラマ中心に人気を得る中、85年のミュージカル『ラ・カージュ・オ・フォール』でゲイのクラブ歌手・ザザ役に挑戦する。これが好評で転機となり、クールな二枚目専門から演技派へ回帰。日本テレビ『白虎隊』86、『田原坂』87では歴史上の人物に扮し、NHK『コラ!なんばしよっと』92では酒飲みで頼りない親父を好演するなど幅広い役に取り組む。CMやバラエティ番組などでコミカルな一面も見せる一方、80年代以降の映画出演は少なくなったが、深作欣二監督「忠臣蔵外伝・四谷怪談」94の伊右衛門の父親役、三池崇史監督「妖怪大戦争」05の妖怪役などで存在感を示す。舞台は『仮名手本忠臣蔵』88、『アゲイン・怪人二十面相の優しい夜』99、『長崎ぶらぶら節』06、『サツキマス物語』09など多数。NHK『再生の町』09の利権を貪る議員、大河ドラマ『龍馬伝』10の土佐藩主・山内容堂など、近年のドラマでは複雑で不気味な人物を強烈に演じている。