I think it is more meaningful to compare z-transform with Laplace transform. Laplace transform is used for differential equations and analog signals. The z-transform is used for difference equations and digital signals. If you restrict your z-transform to the unit circle of z-plane, you get Fourier transform.
Z transform are meant only for digital signals. So if you need to convert a digital signal to frequency domain then you use z tranform. Fourier transform can be used for continous signal as well as digital signal. For digital signal you would use DFT or DTFT depending upon requirement