All of mathematics is "practical" in some sense.
 Pure Theory:

One defines certain mathematical objects and checks that their existence does not contradict any known results.
 Existence:

One shows results that imply that the mathematical objects defined do indeed exist. In order to do this one may have to narrow down or expand the definition.
 Uniqueness:

One shows that the definition is precise in the sense that there is a unique mathematical object that satisfies this condition.
 Algorithmic:

One provides a recipe to "construct" the mathematical object.
 Bounded:

One provides a stepbystep procedure to constuct the mathematical object and give a precise bound on the number of steps.
 Practical:

One constructs the mathematical object.
While the above viewpoint may seem to be specific to the computational aspects of mathematics, it is equally applicable in engineering and other contexts.
Based on the experience of people who have already worked on various mathematical problems one can say that each part requires fresh work and does not "trivially" follow from the previous step. In some sense each part requires strong grasp of the fundamental theoretical underpinnings of mathematics. At each stage one may have to redefine the problem slightly.
So, what should you study? That part of mathematics that you find interesting. You should also carefully study the part of mathematics that is in your syllabusit is not created out of thin air. This combination  studying the course material and studying extra material that you find interesting  is hard work, but is worth it.