고려가 몽골에 복속된 이후, 원은 정동행성(征東行省)을 설치하여 내정에 간섭하고 고려 국왕을 마음대로 교체하였으며, 막대한 공물을 요구하였다. 조공은 물자의 징발에 그치지 않고 공녀 · 환관(宦官)의 차출로 이어졌다.
몽골의 공녀 요구는 1274년(원종 15)에 새로 군대에 편입된 남송(南宋)의 군인들에게 배우자를 마련해준다는 명목으로 고려에 부녀를 보내도록 요구한 일에서 비롯되었다. 이에 고려는 결혼도감(結婚都監)을 설치하여 민간에서 과부, 역적의 처, 승려의 딸 등 140명을 색출하여 보냈다. 이로 인해 당시 고려의 민가에서는 곡성이 가득했다고 한다.
1275년(충렬왕 1)에는 원의 세조가 조서를 보내와 왕국의 통혼과 미녀의 헌납을 요구하여 10인의 동녀(童女)를 보냈다. 이후 원나라는 적게는 2년에 한 번, 많게는 1년에 두 번꼴로 공녀를 요구하였다.
한 번에 공녀로 끌려간 숫자는 대개 10명이었는데, 많을 때는 40~50명에 육박하였다. 원이 공민왕 초기까지 80여 년 동안 공녀 징발의 문제로 사신을 보내온 것이 50여 회나 되었다. 개인적으로 양가(良家) 여인과의 혼인을 요구하는 몽골인들도 있어, 실제로 이루어진 공녀 선발 횟수는 그보다 많았다.
고려는 공녀의 선발을 위해 결혼도감은 물론 과부처녀추고별감(寡婦處女推考都別監)을 설치하였고, 때로는 나라 안에 금혼령을 내리기도 하였다. 또한, 1287년(충렬왕 13)에는 좋은 집안의 처녀들은 먼저 관에 보고한 뒤에야 혼인토록 하는 왕명을 내렸다.
공녀의 대상 신분은 처음에는 과부나 역적 · 승려의 딸이었으나, 점차 왕족 · 귀족 · 관료의 딸들도 선발 대상이 되었다. 또한, 원이 선발 기준을 처녀 · 동녀 및 동녀절미자(童女絶美者) 등으로 구체적으로 제시하자, 공녀의 나이도 점차 어려졌다. 고려에서 공녀는 대체적으로 13~16세의 여인들이 선발되었다. 이에 딸을 가진 부모들은 여러 가지 방법으로 공녀 선발을 피하려고 하였다.
민간에서는 금혼령이 내려지기 전에 미리 혼인시키는 조혼(早婚)이나 사위를 미리 들이는 예서제(豫壻制)의 풍습이 생겨났다. 그것마저 못한 여인들은 머리를 깎아 중이 되기도 하였고, 다급한 나머지 스스로 목숨을 끊기도 하였다.
이러한 폐단으로 인해 공녀 선발은 양국 사이에서도 크게 문제가 되었다. 고려에서는 이곡(李穀)이 공녀의 폐지를 주장하는 상소를 써서 원의 어사대(御史臺)에 올렸고, 원에서는 소천작(蘇天爵)이 합법적인 공녀 이외에 개인적으로 처첩을 취하는 것을 금지하자는 상소를 올렸으나, 별다른 효과를 거두지 못하였다.
원나라에 간 공녀들은 고된 노동과 학대에 시달리며 고단한 생활을 하였고, 때로는 노비로 전락해 매매되는 신세가 되었다. 물론 고려의 공녀 중에 특별한 지위에 올라 호사를 누리는 사람도 있었다. 그들은 몽골 사회의 상층부에서 황제 · 황후 및 귀족들의 궁인 또는 시녀가 되어 큰 활약을 펼쳤는데, 원나라 순제(順帝)의 제2황후 지위까지 오른 기자오(奇子敖)의 딸 기황후(奇皇后)가 대표적인 사례이다.
고려의 의복 제도와 음식이 원나라 황실과 고관 내에 퍼져 원에서 고려양(高麗樣)이라는 새로운 말이 생기게 되었고, 고려만두 · 고려떡[高麗餠] · 고려아청(高麗鴉靑) 등이 유행하였다.
공녀의 징발은 원의 멸망 후에도 곧바로 사라지지 않았다. 원의 멸망 후 들어선 명은 처음에는 처녀의 공납을 요구하지 않았다. 도리어 원나라 사람과 혼인해 살고 있던 충혜왕의 딸 장녕공주(長寧公主)를 돌려보내기까지 하였다.
공민왕은 이를 고맙게 여겨 1373년(공민왕 22) 밀직부사 주영찬(周英贊)의 딸을 명나라 황실의 궁녀로 보냈는데, 이것이 명나라에 보낸 공녀의 시초이다. 이후 명나라는 1408년(태종 8)부터 1521년(중종 16)까지 7차례 공녀를 요구하였고, 총 114명의 조선 여인들이 공녀라는 이름으로 명에 보내졌다.
양국 관계의 안정이라는 정치적 목적으로 이루어진 1차의 공녀들은 영락제(永樂帝)의 정식 후궁이 되었으나, 나머지 6차례의 공녀들은 그러한 대우를 받지 못하였다. 황족의 후궁이 된 사례도 있었으나 대개는 음식을 만들거나 춤추는 일에 종사하였다. 다만 2차의 공녀인 한씨는 영락제의 총애를 받아 동생 한확(韓確)이 조선에서 정치적으로 성장하는 데 디딤돌이 되었다.
그런데 명나라의 공녀 요구는 원과 다른 점이 있었다. 원은 고려에 대대적이고 공개적으로 공녀를 요구했다면, 명은 비밀리에 조선에 공녀를 요구하였다. 그로 인해 공녀의 친족들이 공녀를 만나러 갈 때, 진공사(進貢使) 등의 이름으로 위장하여 파견되기도 하였다.