夜深人静,档案局老馆长余望然(郭九龙饰)见到一个红衣女鬼,随后突发心脏病去世。次日,老馆长的孙子余辉(李威饰)从现任馆长手中接到了爷爷生前最后时刻看的书《红楼史话》,书中夹了一张民国时期美丽女子的照片,余辉的思绪霎时间被带到了遥远的民国北平。在红楼值班的老余和哥们请碟仙,结果招来了一个自称叫胡司仁的冤魂,他倾诉了自己的冤屈,最后交给老余三块大洋,嘱咐他去趟胡家峪找他的女儿胡妹(梅俪儿饰),好
土匪的到来毁掉了春桃(刘晓庆饰)的新婚之夜,她和丈夫李茂(曹前明饰)失散了,只身一人流浪到北京,靠着捡破烂维生。在春桃最艰难的岁月里,是刘向高(姜文饰)一直不离不弃的陪伴和支持着她,尽管两人并没有夫妻之名,但相依为命的他们彼此之间感情十分要好。某日,春桃在街上遇见了一个蓬头垢面的乞丐,她震惊的发现,这个乞丐竟然就是李茂,春桃收留了李茂,一个两男一女的奇怪“家庭”产生了,三人艰难的维系着岌岌可危的平衡。不忍心拖累春桃,刘向高离家出走,直到这时,春桃才承认了自己内心里对于刘向高的感情,在这个节骨眼上,李茂又企图上吊自杀,扑面而来的绝望笼罩着春桃。