书生朱孝廉(邓超饰)与书僮后夏(包贝尔饰)在赴京赶考途中,遇上山贼孟龙潭(邹兆龙饰)大打出手,最终到了一座古寺,经由不动和尚(曾志伟饰)劝说,三人和解。而朱孝廉在古寺里发现了一幅壁画,画中人宛若鲜活灵动。在凝望之时,朱孝廉被一个从壁画出来的仙女牡丹(郑爽饰)带进了画中的仙境--万花林。
其后朱孝廉回到原来的世界,发现壁画上的牡丹被处罚受苦,书僮告知壁画是一幅地狱图。朱孝廉出于义气打算重返“画壁”世界,于是在不动和尚的帮助下,朱孝廉连同后夏与孟龙潭进入仙境。不料姑姑却一反常态,款待三位来宾,并让他们从众多仙女中挑选妻子,为万花林传宗接代。朱孝廉为不使姑姑怀疑,也假意挑选了仙女牡丹的朋友翠竹(谢楠饰)为妻子,后夏和孟龙潭也各自挑选了他们心满意足的妻子,却不知道姑姑打算利用几个男人后把他们杀光。朱孝廉得悉牡丹已被姑姑收押后,尝试取得芍药的帮助来营救,展开了一连串的奇幻冒险旅程。