Reading an opponent mostly comes down to pattern recognition. The human brain loves patterns just like it loves rhythms. It's amazing to think about how much we process automatically on a daily basis. Take body language. Through years of human interaction we learn how to read people before saying a word to them. You can probably sense a lot more about a person just by noticing the patterns in their body language than you can consciously explain. You just see the different cues, process them subconsciously, then come to a conclusion. That same kind of processing is at play when reading an opponent, with the difference being that the conclusions you come to are associated with trained responses.
The way to improve pattern recognition is experience. In the long term, that means processing fighting patterns thousands and thousands of times--when you've had 10,000 right hands thrown at you you'll start noticing all the cues that come before someone throws their right hand like tensing that shoulder, dropping the hand slightly, rotating the body a certain way, things like that--until you see it all together and come to immediate conclusions about what's happening. In the short term, this means watching how your opponent moves. However, you can't rely on anyone smart just showing you their hand. You need to FORCE them to react so that they'll start showing you their patterns. Note that they don't necessarily need to be reacting to your attacks. They can also be reacting to your defensive positioning, your movement or anything else, but the concept is easiest to explain using attacks.
In order to read an opponent quickly, you need to make him show you his patterns repeatedly. The easiest way is with feints and throwaway punches mixed in with a few real shots to keep him honest. Watch how he reacts to your attacks and your suggestions. This is where a snappy, uncommitted jab works wonders. You can throw it with plenty of volume to make him respond and start showing his hand, but without exposing yourself. Once you get a sense of how he moves and what he's trying to do, you start planning your attack and defense.
So from southpaw, let's say you have a great right hook. It's money. You can't just lead with it though, guys will see it coming, pick up the timing and punish you for it. Then you get a favorite tool taken away, start feeling uncomfortable and get out of your game. Instead, you start with your jab. When you throw it, maybe the guy parries it. You feint it and throw it a couple times, sometimes he pulls back or slips, but mostly he just pats it down. Great. Now you know that when his hand is coming away from his face, he's open for that hook. So you condition him to expect that jab. Try to get him reaching for it, even jab to the body and see if he'll reach that far. Then, when he feels comfortable in his defense, you feint the jab and come crashing around his hand with your hook.
Great work, but now he's on to you. When you try the hook again he pulls back and steps around to avoid it. Well that sucks...until you figure out that you can keep using that hook to make him step towards your left--directly into the path of your liver kick. Now you start working that 1-3 combo while stepping off to your right. Let him feel like he can move away from it into safety. When he gets complacent, you blast him with the liver kick and he walks right into it. It hurts him. He's sick of getting picked apart like this, so he steps in and wings and overhand at you. It misses because you kept your eyes open, but now he wants to come forward.
When you jab, he steps in and throws bombs. No problem. You feint a jab, then spear him with a lead leg teep as he steps forward. You work that right leg to his hip and torso, sometimes as a teep sometimes as a front snap kick. Soon he doesn't want to step forward anymore. You pick up the right knee, he hesitates, then you turn it over and question mark kick him. Now he's really getting frustrated. Your jab is always in his face, blinding him and disrupting his rhythm. Anything he tries to do about it gets him in trouble. You just keep setting up your moves. You know he's worried about the question mark kick, so you pick up that right foot only to spring forward onto it and blast him with the liver kick. He tries to circle away from the liver kick so you walk him into the right hook. You just keep building these attacks off each other as his reactions to one thing opens him up to another. When you lose track of him, you go back to your jab. You keep seeing these patterns and exploiting the openings when they're available, but spending most of the time watching for and working to create openings.