When trying to solve a magneto-static boundary-value problem (BVP) ($\nabla \times \mathbf{H} = \mathbf{J}$ and $\nabla \cdot \mathbf{B} = 0$), one can use either the magnetic vector potential $\mathbf{B} = \nabla \times \mathbf{A} $ or the scalar potential $\mathbf{H} = - \nabla \psi$ to fulfil one of the equations. What advantages and disadvantages does each of them have, especially regarding applicability to a wide range of problems (Do they introduce restrictions on the type of problem to be solved?) and possible implementation difficulties (e.g., when trying to impose gauge conditions)?
If the question is too broad, maybe you could give me a pointer to a paper or book I should read.