고창전투는 후삼국시대 고창군에서 경순왕 4년(930년)에 고려와 후백제 사이에 벌어졌던 전투이다. 이 전투에서 고려가 대승을 거두어 후삼국을 통일할 수 있는 유리한 고지를 점령하였다. 고창군은 현재 안동 지역으로 고려와 후백제의 격전지였다. 이미 공산전투에서 고려에 대승을 거둔 후백제 견훤은 고창군까지 도달하여 고려 왕건과 싸웠으나 8천여 명의 사상자를 내고 패하였다. 왕건의 승리는 고창군 재지호족의 적극적 협조로 가능하였다. 패배한 후백제는 서서히 붕괴하기 시작했다. 인근 고을과 동해안 일대 성주가 고려에 귀부하였고 고창군은 안동부로 승격되었다.
고려는 고창전투(古昌戰鬪)에서 후백제의 시랑 김악(金渥)을 사로잡았고, 죽인 사람의 수가 8,000명이었다. 이 전투에서 고려가 대승을 거둠으로써 후삼국을 통일할 수 있는 유리한 고지를 점령하였다. 이후 고려와 후백제 사이의 싸움에서 입장이 불분명했던 안동 · 청송 일대의 30여 고을이 잇따라 고려에 귀부하였으며, 곧이어 명주(溟州)부터 흥례부(興禮府)에 이르는 동해안 일대의 110여 성(城)이 역시 고려에 귀부하였다. 이에 고려는 이 전투에서 공이 많았던 김선평(金宣平), 권행(權行, 장길(張吉)에게 대광(大匡)과 대상(大相)의 관계(官階)를 주어 포상하였고, 고창군을 안동부(安東府)로 승격시켰다.
후삼국시대의 패권을 다투는 격전지로는 안동과 합천 지역을 들 수 있는데, 왕건(王建)과 견훤(甄萱)은 이 두 지역을 확보하기 위해 치열한 공방전을 전개하였다. 920년 보마군(步馬軍) 1만인으로 대야성(大耶城)을 쳐 함락시킨 견훤은 군사를 진례성(進禮城)으로 옮겼다. 다급한 신라 경명왕(景明王)은 아찬 김률(金律)을 고려에 파견해 구원을 청하였다.
그 뒤 한반도의 패권을 장악하기 위한 안동 · 상주 지역에서의 고려와 후백제의 전투는 열기를 더해갔는데, 고려가 불리한 위치에 있었다. 그러다가 925년 잠시 화친을 맺어 전투를 그쳤다. 이것은 견훤이 아들 수미강(須彌强)에게 대야성 · 문소성(聞韶城)의 군사를 이끌고 조물성(曹物城)을 공격하게 했으나, 성중의 병정이 왕건을 위해 지키므로 이기지 못하고 아무런 승산 없이 대치해오다 서로 인질을 교환하고 강화를 맺었기 때문이다.
그러나 926년 왕건에게 보낸 견훤의 질자 진호(眞虎)가 죽자, 견훤은 왕건의 질자 왕신(王信)을 죽이고 다시 고려를 공격하였다. 927년 견훤은 근품성(近品城)을 공취하고, 고울부(高鬱府)를 습격하였다. 이어 경주로 진격해 신라 경애왕(景哀王)을 죽이고, 왕의 족제(族弟) 김부(金傅)를 세워 왕으로 삼았다.
이 소식을 들은 왕건이 군사를 이끌고 공산(公山)에서 견훤과 결전했으나, 크게 패해 신숭겸(申崇謙) · 김락(金樂) 등이 전사하였다. 왕건은 겨우 몸을 빼어 달아나 위기를 모면하였다. 이듬해 견훤은 강주(康州)를 공격해 3백여 인을 죽이고, 부곡성(缶谷城)을 공격해 1천여 인을 참살하였다.
왕건이 이 전투에서 승리할 수 있었던 것은 고창 지방의 재지호족(在地豪族)들의 적극적인 협조에 힘입었던 것으로 짐작된다. 고창전투는 한반도 재통일(再統一)의 최종적 주도권을 장악하기 위한 전투였으므로, 패배한 후백제는 서서히 붕괴하기 시작하였다.