Solution 1:

It's firstly important to separate out the cases of "going":

  • "going" used as part of a progressive tense of "go" with the actual notion of movement vs "going" when part of the periphrastic future construction "going to...", bearing in mind that a present progressive can actually indicate a future action (as in "I'm going to Canada", just as "I'm seeing Dave tomorrow" also implies a future action with the verb "see")
  • "going to" where "to" is a regular preposition vs "to" as a complementiser (i.e. introducing an infinitive);

Then, parallel to these different uses of "go", you need to take account of the following differences:

  • "go golfing" tends to indicate something of an 'active' participation in an event, and usually one where you make a 'trip' to a particular place to carry out the activity then come back;
  • "go to golf/chess club/rugby practice etc" tends to imply going along to an 'organised event' that happens on a regular basis. So saying "go to shopping" doesn't usually make sense, because it implies that there is an organised 'event' called "shopping" that you go to regularly, and that's not usually the case with shopping.

I think the combination of these dichotomies between them explain your sentences.

Solution 2:

Your problem, basically, is the difference between "Be Going to + V" and the Present Continuous (Be + V+ing) with Future Meaning. But most of your examples are mixed up and confused so we need to clarify a few things.

Here are some expressions you need to learn first:

  1. go golfing = X

  2. go to golf = X

  3. go to shopping = X

Now, better examples will be like these:

What's the difference between:

A. I'm going to go to Canada.

B. I'm going to Canada.

-- and --

A. I'm going to play tennis with Mark.

A. I'm playing tennis with Mark.


To answer your question, both "Be Going to + V" and "Be V+ing (Future Meaning) are used to talk about decided actions. This is why in spoken English, it's Ok to interchange them.

Grammatically, the difference is that "Be V+ing" is used to talk about an action that has already been decided AND arranged (prepared). So:

I'm going to go to Canada. = (I have already decided this)

I'm going to Canada. (=I have already decided this. AND I have already bought a ticket)

I'm going to play tennis with Mark. = (I want this)

I'm playing tennis with Mark. = (I already talked to him about this and we have already made a schedule)