Sussex continued their excellent start to their first innings with Aaron Thomason and Tom Haines setting a platform for Sussex who were 211 for one at lunch.
Three wickets for seven runs meant that Glamorgan had given themselves an opening to get back into the match but first van Zyl and then Garton took Sussex up to their opponents' total and beyond.
Sussex made serene progress in the opening session, the only moment of success for Glamorgan was a stunning caught and bowled from Michael Hogan to dismiss Thomason for 67. As has so often been the case, Hogan was the pick of the Glamorgan bowlers and he was the one man to cause real trouble for Sussex.
It was Hogan who brought Haines’ innings to an end when he trapped him lbw just after lunch. He could have had a second wicket in the same over if Nick Selman could have held on to a sharp chance at second slip to dismiss Tom Clark.
Clark made 19 before he drove a ball into the off side to give James Weighell a catch off Dan Douthwaite. Sussex captain Ben Brown went to the very next ball when he had a big swish at a wide ball and was caught behind.
When Delray Rawlins played around a straight ball from Callum Taylor for two Sussex had stumbled from 254 for two to 261 for five.
While all of this was happening van Zyl was imperious, recording the 28th hundred of his career. He was brutal on anything over-pitched but played the drive one too many times and was well caught by Chris Cooke off the bowling of Timm van der Gugten for 113.
With van Zyl gone Glamorgan had a chance to wrap up the Sussex innings but Garton and Ollie Robinson took the game away from them as they built a huge lead.
Garton was denied his maiden hundred when he was trapped lbw by Hogan but he played his part in a fine Sussex effort that saw them reach 481 for nine at the close with Robinson undefeated on 67.
Afterwards van Zyl said: "Especially not playing for a year, I think getting a few runs under the belt is always special and to do it on a lovely day like this in Wales was even more special."
On returning after a year away he added: "To be honest I don’t think it’s too difficult, it is just to know that I can still play cricket after a year, so it is very nice to get some runs under the belt and still know that I can do it.
"I need to think that I am maybe mentally stronger knowing that I can still do it having not played for a year. I knew I could do it, it is just to get that one under your belt and know that the season has started. Every hundred for me is special and this one is special too."