PID control becomes kinda useless as soon as you have a coupled high dimensional system, think something like a drone with aerodynamics or a robot a high number of DOF. There are of course patches so that you can still apply multiple PIDs but the intuition on why it won't work is that each PID doesn't know what the other PIDs are doing, and this often leads to unstable control actions. Another place where PID cannot be applied is in discrete-event systems (eg network of devices that needs to sync up using messages and do something).