I've always thought this is one of the most underused techniques in table tennis. Most players simply do whatever it seems they are going to do. And opponents see what they are doing and have little trouble reacting to it. How boringly simple that is! Instead, why not fake one thing, then do something else? And watch your poor opponent's jaw (and game) drop?
How do you do this? Simply aim one way, and change directions at the last instant. With backhand pushes and blocks it's especially easy to aim crosscourt, and at the last second go down the line. But you can do it both ways. With the forehand, if you rotate your shoulders all the way back, it looks like you are going off to the right (for a righty), but at the last instant you can whip your shoulders around and go the other way. Or you can set up to go to the left, and at the last instant rotate the shoulders back and go to the right. You can do last-second changes of direction with loops, drives, blocks, and pushes. They are often especially effective when receiving. You can do the same thing with serves, where you aim the racket in one direction right up to contact, and at the last instant change directions.
There are other fake-outs. Some players fake out opponents by looking one way while hitting the other way. You can also fake a spinny serve or push with a big motion but just pat the ball with little or no spin. One of my favorites is to serve and then start to step around my backhand corner to play forehand. Opponents sees this and reflexively go to my wide forehand - except, just before they hit the ball (but after they can change directions), I change directions and move to the wide forehand, where I get an easy forehand attack, which is my strength.
If you always do what you seem to be doing, you might as well be signaling your opponent, practically pointing and yelling out, "Hey, I'm hitting the ball over there!" Now imagine the opponent's consternation when you seem to do this, but instead go the other way. Free points!!!