I presonally would go F - and my preference is CX. The main reason are the wider seats. Just came back from JNB to LHR today on BA F - the seats are fairly narrow and more dense (14 in the nose at BA vs. 12 at CX).
But both airlines are good airlines.
Also my preference is asian food. Dont really like british food (sorry). CX is better in this area.