I used to gamble regularly on college and pro football but haven't in quite a few years. Actually, to be specific, I have not really gambled hardly at all since the 97 season. I killed that year with both my Huskers and Denver Broncos doing very well. I made enough that I was sure I would never have that good of a season again so I quit. I started out running bets for a bookie when I was at UNL in the early 80's (he actually let me keep the juice). I'd balance my books and only have to send him the net losses. Long story short- He not only took bets but placed his own as well, he did not do well and was taken on a car ride by some of his "contacts" in KC. I don't think it was clear to him if he would survive that little trip but he did- long enough to sell his house and business to get out of debt with some scary folks. I discovered through that and many subsequent years of placing bets that it simply boils down to luck. Sure you can study teams and lines and figure out who you think SHOULD cover but, I saw way too many cases where the team that should've covered did not. Vegas is darn good at what they do setting lines and that in essence turns the whole idea of betting into a coin flip IMO. The exception being when you are fortunate enough to find a sizable difference in lines on the same game, bet both ways, and hope it lands in the middle. But, a 2 to 3 point line gap is rare to find.
A guy may get lucky once in awhile and put together a streak but reality says that what will happen is you'll win about 50% and lose about 50% which means best case you are going to lose the juice. i.e. if you win $100 for every $110 you lose, it doesn't take a rocket scientist to figure out you're gonna lose in the end. But, it sure can make watching games more interesting, exciting, stressful, etc. If you've got the time to commit to it and the money to lose, I see nothing wrong with it as a source of entertainment. But, if you approach it with the idea of actually making money or needing to win, that would be a very good time to stop.