20$ transaction fee is an incentive for the users to restrain themselves to smaller number of larger transfers.
Is the limit too strict? Probably. Miners still get a lot from mining rewards and don't need to be incentivised with fees yet, but there must be some limit that will force people pay for transactions because when mining rewards end there will be nothing to keep miners mining.
The real difference is that visa has percentage fees on volume and bitcoin has fees dependent on number of transactions want to do at the moment. It's sensible since to avoid trusting single party bitcoin nodes all keep all thansactions that ever happened. Incentivising people to limit their number is a good thing for bitcoin network.
But thanks to that bitcoin won't ever be Visa 2.0
For me bitcoin for payments should work similarily to how prepaid phones work. You land in another country, you buy a card from local provider, you charge it with bitcoins and you usr it to shop.
I think bitpay is already doing something like that.
In my country (the Philippines) everyone is buying from high school kids to office workers.
The current minimum transaction fee is around $40. To exchange your bitcoin to Philippine Peso (PHP), the fixed conversion fee is 5%. If those don't seem a lot, get this: 83% of Filipinos earn below $400 a month. Most of whom I know are HODLing their bitcoin because it's too expensive to move their money. They would rather wait for their investment to reap huge gains before they cash out.
Bitcoin here is branded as a "get rich quick" investment scheme, and that's understandable, bitcoin doesn't have a valuable use case here. You can't buy anything here with bitcoin.