What it can fix, and what it cannot
A resurfacer bonds to an existing slab and rebuilds the very top of it, which is enough to restore a smooth or lightly textured finish, close up shallow scaling, and even out minor color unevenness left by years of wear. Because the layer is thin, it does not have room to do much else.
It will not bridge a crack that is still moving, it will not fill a deep spall, and it will not fix a slope or a low spot that holds water, because a few millimeters of new material follows every dip and defect in what is underneath it rather than covering it up.
Resurfacer versus sealer
A sealer is a coating, clear or lightly tinted, that sits on top of sound concrete to slow water and stain absorption. It does not add material, and it will not change how a worn, rough, or pitted surface feels underfoot, because there is nothing being rebuilt.
A resurfacer is the opposite kind of product. It actually replaces material that wear has taken off the top of the slab. The two get reached for in the wrong order more often than people expect: sealing a surface that has already worn thin just locks the wear in under a clear coat instead of fixing it, and it takes a resurfacer, not another coat of sealer, to bring the texture back.
What the old surface has to be able to do first
Like anything bonded on top of existing concrete, a resurfacer only holds as well as the surface underneath lets it. Oil, sealer residue, loose material, or a surface that is already flaking off in sheets all keep a thin cementitious layer from gripping, and a resurfacer applied over a surface that is not sound tends to fail in the same places the old surface was already failing. If the problem underneath is bigger than surface wear, that is a tear out and replacement conversation, not a resurfacing one. The prep work, cleaning, profiling, sometimes acid etching or a mechanical grind, usually takes longer than actually applying the product.