I am taking your advice man. I am gonna be sitting and having a long deliberation with myself about this.May I suggest, sit and think about it. Think if this is something you will want to do, not just something you will need to do. If you are sure that either you want to do or need is so dire that there is no other way then take the difficult path. You will be starting from fairly low, a masters is not really going to fix your missing exposure or bachelor level training in basic CS. You will be committing to this career fully.
Now if you want to do it half and half kind of way, the issue I see is that you may be back to this question in few years again either with a stagnant career or you will be in the situation where your job is being eliminated due to automation and you will be again doing some other qualification to move in another role in the industry.
If you want to do it fully, you will need to build your base knowledge like any undergrad does. It can be through a full time qualification or through a bunch of projects. Issue with projects is that it does not cover the breadth of knowledge you need because you will learn what you need for project. I would have never done functional programming in 2004 if my language/computation course work did not make do it. A lot of progress in modern and industry useful languages that has happened in last 10-15 years find base in that concept and knowledge. Think modern Javascript (the so called "good parts"), functional extensions to Java and C# are all rooted in basics of functional programming that I learnt in 2004.
If you find committing to CS fully hard, it will only lead to frustration later. This industry is getting better at removing routine work faster than anything I have seen.
Wow! that was a really detailed analysis. Honestly I dont know yet what I am going to be doing but I will try to stick to the pathway you have carved out here. Thank you for your detailed effort buddy.@MajorGrom and @GandiBaat have already given their suggestions, and I know @wonderbly disagrees with me on this. But let me add something else to it. Maybe you really want to do a masters and have teh money to spend. You already said you have poor grades I believe. So you're not getting funded for your masters (not sure if that's even a thing in Canada, it is in the US: my masters was almost fully funded). If so, keep at it.
If you're instead doing a master's because you think it'll make it easier for you to get a job in your new field, you're probably wasting a lot of time and money to get there. Literally everything you need to know about comp sci and data science (two extremely popular and broad IT fields) is available online for free, or very cheap. You almost nailed it by saying the only way your degree helped is to get your first job. But remember the upfront cost of 75k-150k and 2 years to get that first job.
Instead, learn on your own for a year or so, and even if it takes you another year to get a job, you still saved all of your tuition money and still got the job anyway. Especially in IT, your degree typically doesn't matter at all beyond the ease in getting your first job. But you're paying in time and money for that ease.
You can even look into bootcamps. They are much much cheaper, more intensive, and a lot quicker. Here's a rough comparison:
Masters: 2 years + 100k = internship + first job. Let's say immediately after (but that's being very charitable. people still take several months to land fulltime positions after their degree if it's not in the same company as the internship).
Bootcamp: 6 months + 25k = first job in under 6 months.
So overall in this example, you save 75k and 1 whole year. Maybe this first job sucks and doesn't pay well. Guess what. You're still saving time and getting paid instead of paying and losing time. And by the time you would have graduated, you will probably be close to a promotion and get the same or more than you would out of university too..
IMO if you're looking to get into IT, a master's is almost never worth it. If you think you need the structure and accountabiilty, go for a bootcamp. and don't add it to your resume. Use what you learn there and network. I transitioned to IT from mechanical engineering by myself. It's not that hard to learn what you need to learn. Toss in a bit of luck through smart networking, and you render a master's completely useless.
Believe me you, I spent a good amount of time today thinking and weighing my options based on this reply. @cansha also mentions the same and this is the most logical way forward I think too.Thats not a bad idea at all. Infact its very good. I will say leave IT and do a MBA or something if finances permit. Do your internship in GCC and get a job there. May be do a MBA part time while keeping your job? It will take longer but that way you will be spending time here as PR and that will count for citizenship.
I am going to sit and think about this for a couple days or weeks, once I have decided what to do, I will certainly update everybody here. Thank you everyone once again for your helpful and kind words.