両方とも未来のことを表すときに使えます。
言葉のニュアンスの違いとしては,「will」は不確定な未来や予測,「be going to~」はすでに確定している未来や予定をあらわすときに使います。(ただし,厳密には意味が少し異なるため,どちらか一方しか使えない場合もあります。)
意味とセットにして例文を覚えておくと,わかりやすいです。
・It will rain tomorrow.
(明日は雨が降るでしょう)→単純な予測
・I am going to visit him at 10 tomorrow morning.
(わたしは明朝10時に彼を訪ねる予定です)→確定している予定
ただし,使い分ける必要がないときは,問題文の条件(語数や前後の文とのつながり)によってどちらを使うか判断しましょう。