본관은 풍양(豊壤). 자는 기삼(箕三), 호는 혜인(惠人). 서울 출신. 현령 조병석(趙秉錫)의 아들로 조병기(趙秉虁)에게 입양되었으며, 신정왕후(神貞王后) 조대비의 조카이다.
1863년(철종 14) 정시문과에 병과로 급제하였고, 이듬해 규장각대교를 거쳐 홍문관 응교가 되었다가 당시 섭정하고 있던 조대비의 총애를 받아 승정원 동부승지에 특별 임명되었다.
1865년 성균관대사성·이조참의를 거쳐 이듬해 홍문관부제학을 역임하고, 1867년 이조참판이 되었다. 같은 해 개성부유수에 임명되고 1869년 동지부사로 중국에 다녀왔다. 1873년 민승호(閔升鎬) 등 민씨일족과 결탁하여 당시 흥선대원군의 실정을 탄핵한 최익현(崔益鉉)과 함께 대원군세력 축출에 앞장섰다.
1874년 대원군이 실각하고 고종의 친정이 선포되자 금위대장에 발탁되고, 이어 우포도대장·동지삼군부사(同知三軍府事)가 되어 무위도통사(武衛都統使)를 겸하였다. 1875년 훈련대장이 되고 1876년 지경연사(知經筵事)·공조판서, 1877년 예조판서, 1878년 다시 공조판서를 지내고, 1880년 이조판서·한성부판윤·예조판서 등을 역임하였다.
같은 해 통리기무아문(統理機務衙門)이 신설되자 상호군으로 통리기무아문당상이 되고, 이듬해 경리통리기무아문사(經理統理機務衙門事)·사대교린당상(事大交隣堂上)·전선어학사당상(典選語學司堂上)·병조판서를 역임하였다.
1882년 전권대관(全權大官)으로 일본의 변리공사(辨理公使) 하나부사[花房義質]와 그리고 한미수호조약체결 예비교섭차 인천에 도착한 마건충(馬建忠)과도 접견하였다. 한편, 조영(朝英)·조독(朝獨) 수호조약을 각각 체결하였다.
그 뒤 같은 해 임오군란으로 대원군이 다시 집권하자 지삼군부사로 좌천되었다가, 접견대관으로 청나라에 가서 파병을 요청함으로써 군란주동자의 색출과 대원군의 납거를 실현하는 등, 대청외교의 사무를 전담함으로써 국왕과 민씨척족의 신임을 받고 사대보수세력의 수령급 인물이 되었다.
그 해 다시 사은사 겸 진주사(謝恩使兼陳奏使)가 되어 청나라에 가서 기계·무기 등을 수입하였다. 그리고 관세·외교 담당고문으로 독일인 묄렌도르프(Mollendorf, P. G. von)를 초빙, 입국하게 하였고, 청나라와 조중상민수륙무역장정(朝中商民水陸貿易章程)을 체결하였다.
그 뒤 판리통리기무아문사(辦理統理機務衙門事)·독판교섭통상사무(督辦交涉通商事務) 등을 역임하고, 1883년 독판군국사무(督辦軍國事務)·공조판서를 거쳐, 이듬해 지중추부사에 올랐으나 갑신정변 때 피살당하였다. 시호는 충문(忠文)이다.