You will no doubt get a lot of opinions about whether Shylock is a villain or victim, and all of them will be valid. There is also the view that Shylock is both villain and victim. I would suggest that you consider a few things before making up YOUR mind.
Shylock is definitely a conniving, mean-spirited money-lender in this play. However, consider him in the historical context. The Elizabethan audience was for the most part Christian. They still held very prejudicial view of Jews and blamed them for crucifying Christ, which, by the way, is a perversion of Christianity because Christians believe that Christ was crucified for the sins of the world, everyone included, so it is our sin that cruicified Christ, not the Jews. Shylock bemoans the fact that:
'For sufferance is the badge of all our tribe,
The Jews had been persecuted throughout Europe, kicked out of many countries. Everywhere Shylock goes, he is called a 'currish Jew" or a dog. Naturally, hate has built up in his mind and in his heart and if he can get even with non-Jews, he will, and in this play, he does. And Antonio is not innocent. He has not treated Shylock with respect in the past.
Shylock is very bitter and wants vengeance. So, can a person who has such hate in his heart really be a victim? Maybe.
But the idea of vengeance and getting even is antithetical to both Judaism and Christianity. Take the story in the Jewish Old Testament of Joseph. If anyone had the right to seek vengeance on his brothers, it was Joseph - they sold him as a slave. And yet, Joseph tells his brothers, "Am I in the place of God?" He tells them what they meant for evil, God meant for good, and he does not avenge himself against them. And in the New Testament, many places the idea is expressed that "Vengeance is mine, says the Lord."
So the fact that Shylock is Jew does not excuse his vengeful heart. That's my view.
What do you think?
Read the play and analysis here on enotes.