You can read every book ever written on chess, but if you never play you will still be, at best, a middling player. Even if you memorize every rule in every book on chess you still won't become a particularly good player. You must play!
The same is true of math. You must solve problems!
I was always a natural with math, and I almost always grasped concepts the first time my professors covered them. For a long time I believed that this was enough. But as the topics became more and more abstract and more and more complex, I started to fall behind. It didn't feel like I was so good any more. I had developed the belief that practice was somehow beneath me. But practice is exactly how you get good at math.
Understanding is enough at a basic level. You can hold everything in mind and, if you understand it, you'll see the solution. But math continuously builds on itself. As layer upon layer of complexity is added, nobody in the world can hold all the pieces in their mind at once. Nobody! If you practice enough though, you no longer need to think about it. If you've practiced every layer below the one you're working on to the point that it's pure instinct, you don't have to hold any of the lower level stuff in mind anymore. You can focus all your attention on the high level content.
That's exactly like chess. You may understand basic tactics. You may have memorized all of them. But if you still need to look for forks and pins you have a long way to go. Put the books down and go play a few hundred games. Eventually, seeing the basic tactical elements will become as natural as breathing. Now you're ready to begin seeing the deeper elements of the game.
You asked whether you should focus on memorization or understanding. I'm saying neither. You didn't memorize your native language. You don't need to memorize math. Immerse yourself in it. The remembering will happen automatically. In terms of understanding, unless you completely master each step by practicing it until it's instinct (you really just need to get 90% of the way there; as you reuse the concepts down the road you'll go the last 10%), you'll never see the deeper elements of the game. The understanding you get from reading the text is shallow. The understanding you get from practice is deep. It's fluency.
Do not be seduced by the apparent superiority of problems over exercises (if you know what tools you're going to use from the outset, it's an exercise; if you have no idea where to start and need to puzzle it out, it's a problem). Problems are great, and, ultimately, you should definitely test your knowledge on them. But exercises should be the bread and butter of your training. Sure you know how to do them. They almost seem demeaning. But if you regularly work your muscles on these seemingly trivial tasks (like jogging or weight lifting), the challenging, novel, exciting tasks (like climbing a mountain) will get easier and easier.
Do not read the chapter a second time until you've attempted most of the problems at the end. If you solve several of them you'll find that the chapter makes way more sense the second time around. Go back and solve the rest of the problems and if you read it a third time it'll seem painfully obvious. If the book has all problems (at the freshman level all of your books are probably chock full of exercises, but in a year or two you'll start seeing books like this) and no exercises you must find as many problems with solutions as you can from other sources. Many high level texts have a handful of challenging high level problems at the end of chapters (frequently without solutions). Each problem will be unique and be solved in a different way. The lack of repetition means that it's very difficult to attain the "instinct" level. Find more problems elsewhere and solve them. As much as possible, only work on problems you have a solution to (the feedback is essential).
If you can't get additional problems. Just solve the ones you've got over and over (this works good for proofs, just make a list of proofs you want to know and work through it once every night or two with a blank stack of paper). In fact, if you couldn't solve a problem the first time, always re-solve it after you've seen the solution. Keep coming back to it until you can solve it without even a peak at the chapter or the solution. If you get stuck on a new problem for an hour or two, go back and solve similar easier problems for a little while and come back to it.
This may sound like rote memorization, and, beyond that, like a heck of a lot of work. It's not about memorization. Just try it for a while and I guarantee you'll find that your understanding goes through the roof (even if you think it's pretty darn good to begin with). And, well, yeah, it is a lot of work. But maybe less than you think. Doing one-hundred problems is not ten times as much work as doing ten. Problems eleven to thirty probably take about as much time and effort as the first ten. So, probably, do the last fifty. At the beginning new tasks are often unpleasant and frustrating, but with practice they become, if not fun, at least satisfying. Just like jogging. Most people stop practicing just when the learning curve is getting steep (that's the good part, even though it sounds like the bad part).
That's probably more than you expected. I've made my way through a lot of math though, and this is what I've learned. Meta-learned would be more accurate I suppose. If somebody had explained this to me clearly when I was a freshman, I'd probably have gotten quite a bit more out of my education.