影片由黄建新和他的副手杨亚洲联合执导,由老搭档冯巩饰演叶民主,牛振华饰演罪犯,因为戏份不多,牛振华还在幕后客串了制片主任。
原著中,叶民主的女朋友百林长得并不漂亮,是个塌鼻子,但考虑到明星效应,导演还是选择了当红的江珊来演这个角色。
张嘉译当时是西影厂的一个龙套演员,黄建新欣赏他“站着晃晃悠悠,不是一板一眼的,身上又有股匪气”,于是找他来演形象比较另类的重案组组长杨高。
老田一角本来请的是国家话剧院的雷恪生,但当时李少红的电视剧《雷雨》也请他饰演鲁贵,权衡之下,他选择了后者。顶替雷恪生的是西影厂的滕汝俊,他曾在张艺谋的《红高粱》里饰演罗汉大叔。