Рассмотрим следующие примеры:
Will используем,когда решение что-то сделать возникает в процессе разговора, а не заранее.
Например, два друга беседуют о походе в кино.
John: Did you buy tickets for the concert?
James: Not, I’ve forgotten about these tickets. I willbuy tomorrow.
To be going to пользуем, когда уже принято решение что-то сделать заранее.

Например, изменим ситуацию, но друзей и тему оставим.
John: Did you buy tickets for the concert tomorrow?
James: Not, but I am going to buy tickets in the evening today.
Теперь рассмотрим случай, когда речь идет о предсказание будущих событий.
Следует использовать как will, так и to be going to,чтобы сказать о будущих событиях:
- What time is it now?
- It’s 8.30 am.
- O-o, no. I am going to be late for work.

Мы используем to be going to (a не will), когда в настоящей ситуации есть что-то, что указывает на то, что произойдет в будущем (особенно в ближайшем будущем). И тот, кто говорит точно уверен в том, что произойдет, основываясь на ситуации, которая происходит в данный момент.
- Do you see these vegetables? Tomatoes are going to die.
(отчетливо ясно, что помидоры пропадают и скоро необратимо окончательно пропадут)
- Why is she so happy? She is going to be married. (I feel awful now)