在布拉格、普拉纳和洛克特拍摄，最终于5月在卡罗维发利收尾，卡罗维发利的一处水疗中心和普普大饭店一起成为电影中“斯普莱迪德酒店”的外景拍摄地。意大利的主要外景地是威尼斯，电影片尾的大部分外景都是源于此地。影片后半部分的其它镜头大多是于5月下旬到6月上旬在科莫湖畔的德尔巴尔比阿内洛别墅（）拍摄。此外剧组还有在湖畔小镇梅纳焦附近的拉加埃塔别墅（）等地取景。2006年7月30日，007片场发生火灾并遭受严重破坏，由于事件发生时《大战皇家赌场》的拍摄已完成一个星期，外景已经进入拆除阶段，因此没有对影片的发行产生影