Why do you love math?
It's interesting. Much of math is beautiful in its simplicity and it's generality. It's like a giant puzzle/game, except the results are useful.
What is the best way to review?
Learn the concepts.
First, learn what's going on. When you have a problem to solve, learn and apply the procedure for how to solve the problem. Go over the procedure and the derivations. This part is usually slightly boring, since you are following in someone's footsteps. However, this part also gives a lot of insight. Alternatively, you can attempt to solve the problem yourself, but it is not in the best interest of your time to do so, since you're still in algebra/calculus. (Later on though, it's very helpful to attempt problems by yourself without first looking at the general procedures.)
After solving the problem, start breaking down the problem. Figure out why each step is used. If it's not apparent after working one problem, work another one. Try to pick a problem that's very similar, but not exactly the same. Sometimes, it even helps if you just replace all the numbers with variables.
After one or two problems, figure out which steps are used the most, or which steps are the most clever (or tricky), because these steps are the most important or most general. When a process or concept in math is used a lot, it is important, and if it is important, it is usually given a name. Learn the name. Then learn the definitions. Figure out why the concept or process is defined the way it is, what is included in the definition, what isn't included in the definition, and ultimately why the concept or process is important. If it's a concept, figure out why the name is appropriate. If it's a procedure, figure out what else you can use the procedure for.
After learning the above, go back and work another problem. More if you like to do them.
Finally, go back and learn how to derive things from scratch. This part is the most important. Don't use numbers; use variables. If no variables are involved, define some, and try to be as general as possible. Make sure what you're using is well defined. Whenever you see a problem in your own reasoning, try to correct it. (For example, you don't want to be dividing by 0, or multiplying by 0/0, etc.) If you run into trouble and you really can't figure it out, if you have the time, let the problem sit on your table and come back to it later. Maybe come back tomorrow to solve it. If you don't have time, look in a textbook or online for help.
I have to say I disagree with working on a lot of practice problems over and over. Practice problems are usually written by instructors with the goal of having a determined, easily computable solution. This can build confidence in a student, but it also teaches the student to just apply procedures like a machine. Also, many realistic problems do not have simple solutions, and many times, complicated solutions can lead to new insights.
Working many, many practice problems is the number one reason that many students forget everything after a final. Without deep understanding, there is very little chance that a student will remember even only after a year. It's nice to work practice problems to build confidence, but don't get so wrapped up in it that you forget what's important.
On average, how long do you think it would take an average person to review math (algebra-calculus)?
I would estimate an hour per concept. Under this model, how long you review is dependent on how many concepts you are reviewing.