For example: crowdfunding platforms. I can write a smart contract that reasonably and securely associates unique IDs to Ethereum wallets, keeps track of wallets that donate to a specific ID and refunds donators or rewards the wallets associated with the IDs according to explicitly set rules (ie. minimum currency threshold). I can then create a website for it, deploy it as "givemeyourmoney.xyz" and still be considered (and verified) trustworthy and safe just because everyone can read the contract's behavior.
Without a smart contract, everyone would understandably think the site is a scam and wouldn't use it - even if it was totally legitimate. That's obviously an extreme example, but that basic attribute has a lot of other implications.
The problems with smart contracts begin once you have to codify a rule that isn't so easy to translate into code (ie. it turns out that a crowdfunded project was a scam). Now people are creating DAOs to deal with situations like that, with at best mixed results.
But what if you need to verify that a condition has been met that isn't based on the blockchain, like checking if someone actually did deliver the pizza that someone else ordered? Then you're completely screwed.
You could say that these problems are eventually solve-able if the right hardware/software infrastructure was created to address them, but if so then it's at least a decade away from being verifiable and therefore useful.
Anyways, regardless of what could be possible it looks like web3 people are more interested in scamming each other because non-technical users can't read smart contracts and few people do any proper auditing.