De um artigo SQLServerCentral.Com de Ken Powers:
O ponto e vírgula
O caractere ponto e vírgula é um terminador de instrução. Faz parte do padrão ANSI SQL-92, mas nunca foi usado no Transact-SQL. De fato, foi possível codificar T-SQL por anos sem encontrar um ponto e vírgula.
Uso
Existem duas situações em que você deve usar o ponto e vírgula. A primeira situação é onde você usa uma expressão de tabela comum (CTE) e a CTE não é a primeira instrução no lote. A segunda é onde você emite uma instrução do Service Broker e a instrução do Service Broker não é a primeira instrução do lote.