In Pokemon Shield, Zamazenta will be battled near the end of the Post Game. It will actually be the strongest Wild Pokemon found in the entire game, being at an astonishing Level 70. If that doesn't make it difficult enough to capture, it's ability will see it receive a boost to its Defense Stat immediately when the battle begins. It will even know the move Iron Defense that can further escalate its Defense Stat, making it extremely bulky physically speaking!
Obviously, the easiest way to capture to Zamazenta would be to use the Master Ball you receive from Magnolia on it. Master Balls guarantee a Pokemon Capture, meaning you'll catch Zamazenta no matter what it you use it. It would be especially wise to use the Master Ball on Zamazene since you won't receive the item until the Post Game anyways, long after you have already captured Eternatus. Furthermore, there won't be another Pokemon as strong as Zamazenta after you do catch it, so there's really no point in not using the Master Ball on it.
But should you not want to use your Master Ball on it for some reason, you can always paralyze it in battle by using Thunder Wave, lower it's Hit Points as low as possible without causing it to faint, and then use loads of Ultra Balls until it's captured. This is the oldest and best known way to catch any Pokemon, and it still works to this very day. If you do choose to use this method, however, remember to always save your game before facing Zamazenta just in case you do accidentally cause it to faint in battle.
We have questions and answers related to this topic which may also help you: