most cactus seeds remain viable for a very long time,
mainly because they have to 'wait' for the right moment to germinate, which can, in some occasions, take a very long time(copiapoa for instance). Almost all seeds have an incubation time, an amount of time they should be stored before being sown. In nature this is to prevent seeds from germinating before they are spread (i.e.: they have time to get out of the fruit en be eaten, or be carried by the wind,...).
there are of course also some cacti that should be sown as fast as possible (frailea are notorious for this), because they lose their viability very fast.
I myself keep almost all the seeds I get for half a year before sowing them, with most species the difference isn't huge, but I get generally better results.
20 years is rather old though, certainly for small things such as mammillaria; after 5 years I would't count on a high germination rate.
What would you/the seed dealer consider pretty old?