I think the main question is what are you going to be developing?
If all you are going to be developing is small tools for Inventor, then I would just go with VBA. No need for compiling, easier debugging.
If you are developing small to medium sized tools with some forms and need to catch and response to events, then I would go with VB.Net and write Add-Ins.
If you are developing an application, need to develop your own classes, need to specifically control memory management, need to interface to a 3rd party API that is written in C++ or C, or need to do some intensive calculations, then I would go with C++ (I'm actually a big fan of Standard C++ and the STL). If you want to jump on the .Net bandwagon, then C# is another option, but I haven't programmed w/ C# so I don't know what advantages it has.
As a general rule, I wouldn't limit myself to one language. It depends on the task as to what language is easiest to use and get the job done quickly. However, if you are taking computer courses, I would tend to stick to the theoretical side of things (e.g. logic, algorithms, numerical methods, containers, procedural vs. OO, machine language and Von Neumann, lazy vs. strict evaluation, interpreted vs. compiled). This will give you a good base knowledge to apply to any language and know what is "do-able".