Actually, it's possible to use the Zener's junction capacitance to your advantage! All you need a fast diode in series with the Zener.
So, let's say you've got signal coming in that you need to clip (or limit) to 5Vpp. In this case, I'm using a 1MHz@10Vpp signal. We're using a 4.7V Zener.
Here's what the straight up Zener clipping circuit looks like:
Ouch, that GPIO.Vi waveform looks awful. However, because of the Zener capacitance, we expected that. So, how can we fix it? Add a diode:
Now look at that GPIO.Vi waveform, it looks *much* better! So, what exactly is going on here? Well, the first time the input goes over ~5V (4.7V Zener + 0.3V Diode), the Zener starts to conduct, then the square wave drops to 0V and Zener stops conducting, however it stays biased by the junction capacitance (that is, it holds the voltage up to just under the conduction point).
You can also use a single Zener (pre-biased from your VCC rail even) to protect multiple pins:
Either implementation works well and will allow the Zener to react within a nanosecond!