The maximum useful datarate is a fraction of the carrier frequency. However, the difference between ZigBee and WiFi has nothing to do with that. 2.4 GHz is so high, that it is not even close to the limiting factor for data rate.
Generally, there are two tradeoffs with higher data rate over the same frequency carrier: RF bandwidth and power.
A perfect sine wave, like a unmodulated carrier, has a bandwidth of zero. As soon as you start messing with that, the bandwidth becomes non-zero. All modulation schemes by definition must modulate the carrier in some way, so all cause the bandwidth of the transmitted signal to be non-zero. This means that signal will use up some finite amount of the RF spectrum. There are legal and practical reasons why you want to keep the amount of RF spectrum space to a minimum. Different modulation schemes have different characteristics, but one way or the other you're going to pay for high data rate with a high spectrum width, or bandwidth.
The other issue is power. This is the main reason ZigBee is much lower data rate than WiFi. I won't go into all the reasons why since it seems off topic to the question and the answer could be a whole book, but it takes more power to transmit a higher data rate at the same signal to noise ratio as a lower one. In some sense, you can trade off data rate with signal to noise ratio at the same power. There are also power and dollar costs in the electronics that have to handle the higher data rate independent of the RF power. Since ZigBee is intended for small low power battery operated devices, a tradeoff was made between data rate, power requirements, distance, and usefulness. Because battery operation was so important, the data rate was made lower. WiFi, on the other hand, had little constraint on the power required for the electronics. Its intended use also demands higher data rate, so a different tradeoff was made.