I’ve fitted both. In my own and customers’ houses.
The state of the existing floor is a big determining factor. I’ve just done my kitchen, dining room and hall (all one area) in Karndean. A mix of concrete, quarry tile and suspended floor to start with.
I had to put 9mm ply on top of the floorboards, but was able to tweak the joists to get the surfaces level, taking into account the latex screed needed on the rest.
But I didn’t have to take off the skirtings and bugger about with the door thresholds and architraves to accommodate the extra height that engineered oak would have involved. (I detest scotia beads).
I try to avoid materials that pretend to be something else, but I make an exception for Karndean.
But sometimes the floor is just too uneven to fit either, so carpet is the only (and far cheaper) option.