500년 전 조선시대. 전설의 피리 '만파식적'이 요괴 손에 넘어가 세상이 시끄럽자, 신선들은 당대 최고의 도인 천관대사(백윤식)와 화담(김윤석)에게 도움을 요청해 요괴를 봉인하고 '만파식적’을 둘로 나눠 두 사람에게 각각 맡긴다. 한편, 천관대사의 망나니 제자 전우치(강동원)가 둔갑술로 임금을 속여 한바탕 소동을 일으키자, 신선들은 화담과 함께 천관대사를 찾아간다. 그러나 천관대사는 누군가에게 살해당하고 피리 반쪽이 사라졌다! 범인으로 몰린 전우치는 자신의 개 초랭이(유해진)와 함께 그림족자에 봉인된다.
요괴 잡는 도사도 어느덧 전설이 된 2009년 서울. 어찌된 일인지 과거 봉인된 요괴들이 하나 둘 다시 나타나 세상을 어지럽힌다. 이제는 신부, 중, 점쟁이로 제각각 은둔생활을 즐기던 신선들은 다시 모여 화담을 찾지만, 500년 전 수행을 이유로 잠적한 그는 생사조차 알 수 없다. 고심 끝에 신선들은 박물관 전시품이 된 그림족자를 찾아 전우치와 초랭이를 불러낸다. 요괴들을 잡아 오면 봉인에서 완전히 풀어주겠다는 제안에 마지 못해 요괴 사냥에 나선 전우치. 그러나 전우치는 요괴사냥은 뒷전인 채 달라진 세상구경에 바쁘고, 한 술 더 떠 과거 첫눈에 반한 여인과 똑같은 얼굴을 한 서인경(임수정)을 만나 사랑놀음까지 시작한다. 전우치 때문에 골치를 앓는 신선들 앞에 때마침 화담이 나타나지만, 화담은 만파식적의 행방을 두고 전우치와 대적하는데…