My students were just given an assignment where they build AI to play Connect 4. Some will try to make a simple reflex solution because they want to avoid recursion, then come to office hours asking how to make it work better. It... can't. There really is an observable upper-bound on if-then performance.
Only on if-else chains you can code by hand.
There's a lot of machine learning methods that can be seen as using data to generate large networks of if-else decision points. There are methods that perform (a discrete simulation of) continuous generalization of if-else chains. And fundamentally, if-else chains with a loop thrown in the mix is a Turing-complete system, so it can do anything.
The problem here is that if-else chains are a really inefficient way for humans to model reality with. We can do much better with different approaches and abstractions, but since they all are equivalent to a finite sequence of if-else branches, it's not the if-else where the problem is - it's our own cognitive capacity.