The J-16 has pretty much always toyed with J-10C in PLAAF's own internal competitions, training and exercises. If J-10C is approximately equal to Rafale and Typhoon, J-16 simply is a J-10C on performance enhancers with twice the range and payload. Pretty hard to beat heavy weight fighters that can turn and burn, climb and accelerate well. Especially when they carry 2x the missiles. Everything else being equal, J-10C just can't win BVR against J-16 and WVR is pilot skill but J-16 isn't bad WVR anyway.
J-16's radar is far superior to J-10C's which hasn't been reported to have received upgrades unlike J-16's. J-16 can carry 10x PL-15 or PL-16 to J-10C's 4 or 6 max. It can fly as far as a J-10C with three drop tanks. Better top speed, similar turning, acceleration and climb, better instant turn rate but slightly inferior sustained turn rate. Balancing with their respective RCS, both detect each other around the same time but with 2x the missile payload and better range, you win BVR. J-16 probably also has better integrated ESM.
There are reasons why PLAAF has not stopped purchasing J-16 while J-10C basically stopped. There are over 500 J-16s in service and fewer than 300 J-10C in service. Despite being more than twice the cost, it's clearly favoured even if you account for China's geographic size and need for heavy fighters. I love the J-10 but the J-16 is a different level of fighter capability.