I just saw the first season of the Sopranos on VHS.
I almost see the whole thing as a morality play on the nature of good and evil.
Using the definition of evil from http://www.dictionary.com:
I would argue that Tony Soprano is not evil. In fact, he is one of the true fully morac characters in the series.
Consider the episode where he takes his daughter Meadow to look at colleges. He happens to see an infamous snitch in hiding, and the snitch sees him.
He knows that it is his duty to dispose of the snitch. Rather than use the fact that his daughter is with him as an excuse to have somebody else do it, Tony insists on doing it himself.
At one point the snitch sees Tony and follows him to the hotel, but doesn’t shoot him because he’s with his daughter.
Later, Tony garrots the snitch who as he’s choking pleads for mercy, saying he could have killed Tony the night before, but didn’t becuase of his kids. Tony is unswayed, and he finishes the job.
All through this intrigue he manages to keep up appearances with his daughter, and actually do some quality parenting.
It should also be noted that Tony visited the Snitches house and saw the snitch and his family, but left. It is not known whether he desisted from killing the snitch then because the family was with him, or was merely trying to get a better ID.
Now, many ethical systems allow for the use of violence in certain circumstances. For Tony and his ethical system it would have been immoral to let the snitch slide. The Snitch had broken his vow of silence and required the punishment that he fully new would be coming both when he made the vow and when he broke it. For Tony, it was simply a matter of duty.