본래 신라의 축산현(竺山縣, 또는 園山縣)이었는데, 757년(경덕왕 16) 예천군의 영현으로 하였다. 995년(성종 14)용주(龍州)로 승격하고 자사(刺史)를 두었다가 1005년(목종 8) 자사를 파하였으며, 1012년(현종 3) 용궁군으로 낮추어 상주목의 임내로 하였다.
1172년(명종 2) 감무(監務)를 두었고, 1413년(태종 13) 감무를 현감으로 하였다. 1895년(고종 32) 안동부 소관의 용궁군이 되었다가 다음해 경상북도 내의 군이 되었으며, 1914년 행정구역 개편 때 예천군에 통합되어 용궁면이 되었다.
용궁이라는 지명은 용담소(龍潭沼)와 용두소(龍頭沼)의 용이 이루어 놓은 수중의 용궁과 같이 지상에도 이러한 용궁을 만들어 보자는 뜻에서 지은 것이라 한다. 조선시대에는 치소가 용비산(龍飛山) 북쪽의 낙동강 지류인 남천(南川) 유역에 있었으나 철종 때 서쪽으로 옮겨 성화천(省火川) 주변에 자리잡은 것이다.
외부와의 연결은 도로보다 하천을 많이 이용하여 남쪽의 하풍진(河豊津)이나 동쪽의 사창(社倉) 등을 통하여 물자를 운반하였다. 북쪽의 문경 관할이었던 조령산성(鳥嶺山城)에는 용궁의 산창(山倉)이 있어 충청도 지역으로 물자를 운반하였다. 하천 유역에는 부취루(浮翠樓)ㆍ수월루(水月樓)ㆍ청원정(淸遠亭) 등의 누정이 있었다.