Actually, only physical cash is what you can spend immediately. If you pay by card, the card issuer promises to pay the company within 3 days of the transaction but the funds are just somewhere between your two accounts and are pending in both so that's not very instant (when compared with an average for bitcoin of 10-30 minutes).
As was mentioned above, there's the lightning network where transactions normally take less than 10 seconds to go through (they just use contracts in the wallets thst can be broadcast to the blockchain at any point to redeem the btc owned by that node).
You're wrong, in Europe you can make instant wire transfer in less than ten seconds now, with SEPA Instant Credit Transfer. You just need to know the SEPA account number of the person to pay. Only few dozens of cents are charged for the wire transfer.