I'm not sure if it could be used, but many years ago the creator Natvander released a series of speed signs and a driver rule that allowed you to set and detect the 'type' of train. You could have 'express', 'standard', 'goods'; each being able to have an individual speed limit set in the 'variable speed board' assets.
In theory you could possibly use a rule such as this to set the 'type' of train (or a custom priority setting).
This could then be used either in a rule, or a custom object, to select which road in a loop/siding arrangement the different trains use.
Alternatively, if you know where the trains should be at any particular time, you could just manually code them to use the appropriate siding.
Another thought would be to vary this depending on timing of the two trains.
The first train goes into the siding, the second train takes the main (allowing the train that won't be stopping to continue through at higher speed). It would require a bit of work with 'variable' settings, trigger checks, and possibly also the 'driver schedule' rule (I think it was, it was a rule that let you assign new commands to a driver part way through a session). In this case you would use this rule to progressively assign commands, based on which triggers the train passes, throughout the session. Rather than giving the driver the full list of commands from the start
Regards