Fees are charged by hops, if there's a direct channel between the sender and receiver there are no fees.
Discussion
On chain fees for opening/closing a channel, managing liquidity, locking capital up are all costs of having a direct channel. So even direct channels have some costs. Routing payments via different nodes is what the lightning “network” is about, not setting up direct channels between custodians. That isn’t to say zapping tons of people for low cost isn’t sweet, but there is a cost and somebody is paying it, whether you choose to say no fees or not.