Constraint programming offers facilities for problem modelling, constraint propagation and search. This paper discusses the resulting benefits for practical applications which exploit these facilities.The modelling facilities are particularly exploited in applications to verification, both of circuits and of real time control systems. The propagation facilities are exploited in applications involving user feedback and graphical interfaces. The search facilities are exploited in applications such as scheduling and resource allocation, which involve combinatorial problems.The paper surveys applications under each of these three headings.