I think the best technique is to really try to understand them.
For example, consider the formula `x^a * x^b = x^(a+b)` . Instead of thinking about just memorizing it, stop to think about why that's the formula. Try to really understand it. Consider an example, say `x^4 * x^2` . We know that `x^4 = x*x*x*x` and `x^2 = x*x` , therefore `x^4 * x^2 = (x*x*x*x) * (x*x) = x*x*x*x*x*x` . Now we see there are 4+2 = 6 x's multiplied by each other, so we have figured out on our own that `x^4*x^2=x^(4+2) = x^6` .
This is a good technique to use on any problem. Stop and think about what you know, and use the tools you know to solve harder problems.
Of course, the best way to learn anything is by practicing. Do lots of problems. As you do more and more problems, the techniques will become natural, and will build upon each other.