I'm creating a program which will provide Texas Hold'em poker probabilities and suggestion. I know how to calculate the probability of getting a certain hand. However, I'd also like to find the overall probability of winning. Now I'm not quite sure how to find this out, the only idea that I have is a BruteForce method, trying all possibilities. For every card the opponent could have (and factoring in any community cards not revealed), find out whether it's a win or a loss. Then simply divide the number of wins by overall possibilities. I know this is very ineffecient, I'm not even sure if it's feasible. So my question is, is there any better way to calculate the probability of winning, perhaps by comparing the possibilities of getting certain hands?