No SQL Server, quando você deve usar o GO e quando você deve usar ponto e vírgula;?

Sempre me confundi quando devo usar a palavra-chave GO após os comandos e se é necessário um ponto-e-vírgula no final dos comandos. Quais são as diferenças e por que / quando devo usá-las?

Quando executo o script Gerar no SQL Server Management Studio, ele parece usar o GO em todo o lugar, mas não o ponto e vírgula.

questionAnswers(5)

yourAnswerToTheQuestion