Pedal assist is a wide subject, but we can split in into 2 main usage category, and two basic components.
The two main categories are the type of riding you are doing. Street or smooth trails cruising, or MTB rough terrain navigation.
The two main components of pedal assist are Cadence sensors, and Torque sensor.
1- Cadence sensor measure the cadence of your pedaling, so all they know is if you pedal and how fast, but they have no idea about how hard it is.
In order to get more of less assist, you mostly have to switch assist levels with a button on the handlebar.
Their base principle is that for a chosen assist Level, when they detect that you are pedaling, they will activate the full power of the assist level chosen, like an ON/OFF switch, and they will maintain that assist level until you stop pedaling.
In that rough implementation, they are good at providing a smooth ride when you cruise at regular speed, but they have a small delay before they kick in that can make starting from a dead stop uneasy (especially in a hill), and they have a delay before they cutoff that can be disconcerting. And if terrain changes you can find yourself constantly changing assist level.
Some controllers use smart programming to minimize their shortcoming. For example, some will reduce assist when you are pedaling faster, assuming pedaling is getting easier because you downshifted. Some will take the opposite approach and increase assist as you pedal faster, assuming you are trying to go faster etc... But these smart modes will only improve some scenarios while making other one worse.
2- Torque sensors measure the pressure you apply on the pedal, and provide an assist power that is proportional to that pressure. If you press a little you get a little assist, if you press a lot, you get a lot. Because the assist is directly proportional to the effort you put in, they feel very natural and intuitive. The assist level you chose is basically the multiplier of your input like 2X, 3X, 4X.... and they just make you feel super human.
Just by themselves, they are great in MTB and rough terrain situation, with up and down, obstacles etc... as they have instant response, and are infinitely variable at the pressure of your feet. But when cruising on the street or smooth trail, they would feel somewhat irregular, because in that situation, the pressure on the pedals is intermittent, and so is the assist provided.
Again, controller programming can smooth some of that irregularity.
3- Good Pedal Assist systems like found on the Bosch, Bafang and others, use both sensors and a cleaver programming to blend them based on effort, speed and cadence. This allows you to get the best of both worlds, with a variable assist that is instant and feels natural, and also offers smoothness when cruising.
Depending on the controller, they may also give you access to a lot of programming options, so you can fine tune the behavior based on the type of riding you do, and the feel you like.
So ideally look for a system that has both sensors.
If you can't have both, choose the type based on the riding you do most (Cadence for cruising, Torque for rough riding)
And do investigate from users how they respond, and what programming options (if any) are available to tune them to your liking.