We report detailed neutron scattering studies on Ba$_2$Cu$_3$O$_4$Cl$_2$. The compound consists of two interpenetrating sublattices of Cu, labeled as Cu$_{rm A}$ and Cu$_{rm B}$, each of which forms a square-lattice Heisenberg antiferromagnet. The two sublattices order at different temperatures and effective exchange couplings within the sublattices differ by an order of magnitude. This yields an inelastic neutron spectrum of the Cu$_{rm A}$ sublattice extending up to 300 meV and a much weaker dispersion of Cu$_{rm B}$ going up to around 20 meV. Using a single-band Hubbard model we derive an effective spin Hamiltonian. From this, we find that linear spin-wave theory gives a good description to the magnetic spectrum. In addition, a magnetic field of 10 T is found to produce effects on the Cu$_{rm B}$ dispersion that cannot be explained by conventional spin-wave theory.