I don't think that there is any sport that can give you guaranteed success each and every time but somehow I feel that betting on cricket is much easier for me to make some money as you can easily predict what will be the end result depending on the teams and if you have good knowledge then it will become more easier for you to win in it.
in my opinion, if someone is familiar with one sport, he know almost everything with the sport and each of team, then i think if he place a bet then he can have a chance to win every game he bets. but i agree with you that this is not always guarantee to him to win because this is about a luck in each of team that played in a match. we have 90% prediction to win but 10% we have to depend with the luck from the team or a player.
Having the skills in sports betting is your advantage and sports bettors knows that they need to have the skills to win consistently, in fact it is advisable to focus only on limited sports so you can spend enough time studying the match up which will eventually give you a win.
The secret in sports betting is to look for long term success and it can be achieve with consistency, having a good bankroll is required so you will not get bored.
Even if you have knowledge of any particular sport it doesn't give you guarantee that you will win all the time as we have seen many times in sports that match has been fixed and many times major upset is created which leads favorite team to loose the game and in that case you can loose your money in it.