Ethernet is an efficient wired transfer protocol while WiFi is neither (sorry to be so obvious, but that's the reason). However, your observed 20-30mbps is a little low. Under good conditions and over a modest distance, you might expect twice that performance on a dedicated 802.11n network (a little more than that in a best-case, dead-simple configuration).
Now, before someone comes in and claims that they're getting well over 200mbps on their 802.11n setup you need to understand the difference between link rate and real data throughput. Link rates (as reported in any number of WiFi utilities -- including Apple's own AirPort Utility) do NOT indicate true data throughput (i.e. observed data transfer in bit/bytes per second). WiFi link rates can be reported in the hundreds of millions of units but they're simply a "pie-in-the-sky" value which indicates the communication rate at which the WiFi driver believes that it can operate. However, you can use link rates to help diagnose problems, since generally speaking the higher the link rate the better your data transfer rate and your average data transfer rate will never exceed your link rate.
If you are having problems with your WiFi (and it appears that you are) you need to check your setup for the latest firmware and software (and configured properly) and then look for sources of interference (additional base stations on the same channel, wireless phones, microwave ovens, etc.).