Don’t make your good guys too good, or your bad guys too bad. The only one who’s ALL bad is Mean Pete. Hah!
Ahem...anyway, Mean Pete and one of my old gym teachers aside, most folks are a combination of good and bad, and to not instill both qualities in your hero and villain is to deny them depth and dimension, to keep them from seeming human enough to be real. If your characters aren’t real, the reader won’t identify with them. And you want your readers to identify with both the hero and even to some extent with your villain, so that not only can the reader see how the hero came to be who he is, they can see how the villain came to be who he...or she...is, as well.
Don’t be afraid of making your villains women. I love having the occasional villain in my own westerns be a woman because one, it’s somewhat unexpected, and, two, women can make even better villains than men because women are innately aware of our male heroes' soft spots. And a really nasty female villain will not be at all reluctant to exploit those soft spots for all she’s worth.
But remember not to make your female villain ALL bad—a disease that’s going around these days in both books and movies. In Misery, Stephen King helps us identify with Annie Wilkes by showing us how mentally disturbed she is--and often sad because of it--so that we can imagine what a lousy childhood she probably had.
But that doesn't it make it any less fun to see her get her head bashed in with a typewriter!
Oh, sorry. Was that bad…?