Use whatever method you find the most fun. If you have more fun, not only will you get better faster, because you will feel more motivated to practice, you will obviously just enjoy the hobby more!
However, if you really want an answer for which method is better then Roux is better, it’s not really even a contest. (Brace yourself, I’m about to walk of text)
ZZ’s widely accepted benefits are mainly that it has a relatively low move count and is very ergonomic.
when it comes to the move count argument, ZZ only comes close to matching Roux’s move count if you know full ZBLL, and ZBLL has a swathe of problems itself. Namely, bad ergonomics for a lot of the cases, long recognition pauses, and just bad recognition in general. In many cases it’s honestly just faster to use OLL and PLL, but then why would you use ZZ in the first place?
in terms of ergonomics I actually think the argument for ZZ is also rather weak. It’s rotation less but that’s about it. The amount of re-grips, and switching from Left to Right hand turning you have to do, due to pieces for one side block existing on the other side, honestly counter acts any other ergonomic advantages IMO. Not to mention ZBLL doesn’t have the best ergonomics (which again has to be used to make the method viable in terms of movecount)
On the other hand Roux doesn’t really have either of these problems. Roux has a comparable move count, but CMLL and LSE don’t have the problems ZBLL does. CMLL is a small, very well refined set of algs that have great recognition, move count, and ergonomics, and LSE has easy look ahead and is 2 gen.
Comparing F2B and ZZF2L again there’s no contest. The ergonomics are ACTUALLY good, requiring little to no L R switching as you just plan one block in inspection, then the rest is R r U gen.
and as much as we say F and B moves are bad when talking about these methods, there is a time and a place where they’re just simply faster to use. If using them is the difference between a 2 move pair and a 5 move pair then the hit to the ergonomics might just be worth it, or not, the point is is that with Roux you have the option to choose which one is optimal for you at the time. You could never use them, or use them all the time, or only when it’s optimal. With CFOP you’re forced to use them or a Rotation, in ZZ you are forced NOT to used them, with Roux you have the choice.
but then finally, there is one thing that I haven’t mentioned yet, but I believe to be the main reason why Roux is better then ZZ, and that’s the inspection. During inspection you want to look ahead as far as possible to try to maintain smooth turning and high tps, with few pauses throughout the solve while staying efficient. Top roux solvers can plan most of not all of F2B in inspection, but with ZZ that’s much harder. EOLine is very difficult and is a much less significant portion of a solve in terms of movecount and time, it will take up far more of your inspection time that you could instead be using to look further into your solve.
Roux is just better. Not to mention it’s got a MUCH better moveset for OH if you care about that.