I always think it's unreasonable to have high transaction fee per transactions, and is researching about EOS's model: Account Registration fee + 0 transaction fee.
I don't know exactly how eos work, but ethereum needs transactions fee to prevent ddos attack.
Ethereum is supposed to be fully decentralized. Their Dapps, once running, cannot be stopped.
As a world computer, where no one can click "reboot" charging a fee for everything that is done is a way to prevent world resources to be wasted, as well as protecting the network from attacks (like a program that would just run over and over again to spam the network)