Bicalutamide is an anti-androgen, blocking Testosterone from getting to Androgen Receptors.
Enzalutamide is an anti-androgen around 8 times more powerful than bicalutamide at blocking out Testosterone.
However, in the event that an androgen receptor is triggered by Testosterone (which will still happen occasionally), Enzalutamide also attempts to prevent two subsequent stages which are required for the cell to multiply, which Bicalutamide does not do.
Abiraterone switches off the small remaining Testosterone which comes from the adrenal glands. It is also an anti-androgen, but that's not its main method of working. It also switches off other essential steroids from the adrenal glands, which is why you need to take a low dose steroid to replace those.
Enzalutamide and Abiraterone can both work after Bicalutamide has failed. However, I think the current best practice is considered to be to start on Enzalutamide or Abiraterone ASAP, which is thought to give the longest protection. I have not seen any data on upfront Bicalutamide followed by Enza/Abi verses just upfront Enza/Abi.
If I was faced with this choice, I would skip the Bicalutamide.