General Programming question?
my issue is where do I go from here?

Started college August 2009, learned the basics of how to use c# forms to make a basic spaceinvaders game. Worked out with other examples on how to make a game on xna.

September 2010 went into second year studying Computer games Software Development. Using c# to learn the principles of inheritance, classes, etc Got thrown into c++ using direct x, not really understanding it as we get given the make up of direct x giving with an our explanation to how it works and then asked to make various tasks happen, rotate scale, add sound move etc. We got given xna to build a plat former though no explanation to what we nee to do just a checklist of what we were required on a fortnightly basis. Now Ive passed everything with no issues but I feel what I know is very limited. Partially due to what I believe to be limited knowledge taught and partially down to my own fault of maybe not looking for solutions or practices hard enough. 

The problem is I dont really know what I should be doing in regards to what am I supposed to be learning? Should I be concentrating on understanding directx? Should I focus on what c++ can do within the console to understand the basics Should I concentrate on trying to figure out c#/xna?

I understand programmers are not made overnight, but I would atleast like to feel that I can make more progress both with speed and depth.

Some advice would be greatly appreciated.
General Programming question?
===

my issue is where do I go from here?

Started college August 2009, learned the basics of how to use c# forms to make a basic spaceinvaders game. Worked out with other examples on how to make a game on xna.

September 2010 went into second year studying Computer games Software Development. Using c# to learn the principles of inheritance, classes, etc Got thrown into c++ using direct x, not really understanding it as we get given the make up of direct x giving with an our explanation to how it works and then asked to make various tasks happen, rotate scale, add sound move etc. We got given xna to build a plat former though no explanation to what we nee to do just a checklist of what we were required on a fortnightly basis. Now Ive passed everything with no issues but I feel what I know is very limited. Partially due to what I believe to be limited knowledge taught and partially down to my own fault of maybe not looking for solutions or practices hard enough. 

The problem is I dont really know what I should be doing in regards to what am I supposed to be learning? Should I be concentrating on understanding directx? Should I focus on what c++ can do within the console to understand the basics Should I concentrate on trying to figure out c#/xna?

I understand programmers are not made overnight, but I would atleast like to feel that I can make more progress both with speed and depth.

Some advice would be greatly appreciated.