There are two co-owners, A and B, of a federal corporation C in Canada. B has a side job at a Canadian company D which has a non-compete clause in the contract. C and D do in fact compete. If a legal case is made, is it person B or corporation C that can be sued? And can A be held liable in any way?
Only parties to the contract can sue for breach of the contract
In the situation you describe, the contract is between B and D so only B can be sued for its breach.
There is a tort of inducing breach of contract which is not often litigated. Under this tort, if either A or C were aware of B's contract with D (C is almost certainly aware) and they induced B to break that contract, D can sue them for damages.