I still don't consider Sasuke a villain in the story as a whole. Part 1 Sasuke was definitely not a villain. He would've killed Naruto otherwise after the battle in Final Valley. He still had morals. Of course revenge is never a good thing, but it's not like he was plotting an evil plot that would harm innocent people. That only makes him selfish and self-centered, not 'evil'. If he kept going that path there's no doubt he'd become evil. The only part where he showed a villainous personality was in Five Kage Summit after trying to kill Karin and Sakura and when he a made statement of destroying Konoha (which never happened). I thought he became a villain there, but he later had a sudden change of heart after learning the truth from Itachi himself. He decided to join the war and helped Naruto and the others save the world from the true villains like Obito, Madara and Kaguya. So he never really became a villain, but an antagonist for the most part because his ideals counteract Naruto's. He almost became a villain but Naruto prevented him from becoming one. Naruto saved him from going down that path.
Obviously I don't favor that he ended up with Sakura. It's out of character for him, that's why he should've just became a villain and died. Now he's out wandering the world and never spends time with his family. He shouldn't have been redeemed. Nothing in Naruto make sense anymore and it's pointless to make sense of it now. It's all a huge mess as one of the above poster says. If kishi had the balls to kill Sasuke maybe all this would've turned out better.
The difference between Kira and Sasuke is that Kira actually ended up becoming a true villain/evil, Sasuke didn't but almost did. Kira got corrupted by the Death Note. You could argue that he was doing everything for the 'greater good', but I'd rather not get into that as it's off topic.
I think Sasuke (like Sakura and Naruto) suffers from poor development. He's definitely an anti-hero. He walks a dark path not of his own making, with even his worst behaviors able to be excused or forgiven somehow. (Unlike Danzo, who could have been the darker anti-hero to Sarutobi's lighter path, because Danzo is truly villain in that he is motivated by power disguised as the greater good.)
There was a time that Sasuke came back and wanted to be ruler of Konoha and challenge Naruto for the Kage seat. If that had happened, like I thought it might (giving Team 7 one last final arc where they were focused on tension directly between their group), then Sasuke might have turned into a villain. But that plot thread just got dropped, not resolved. If I remember it's never clearly stated why he gave up on that goal. And Sasuke instead became a wandering monk type, working for the greater good in his own way. Anti-hero.
Anyway, Sasuke was never fully developed into any of the avenues his character might have taken:
— He never becomes a sympathetic character — the PTSD victim who finally recovers from his terrible childhood and is able to accept and return the love of a wife or family, thus learning to truly protect the ones he loves.
— He never becomes a villain — like I said before, all of his actions are either given a pass by those slighted (Sakura/Karin/Naruto/Kakashi), or are excusable or forgivable. Kishimoto always bails him out at the last moment.
— He never realizes his power back in the village — We never see his return to the village. We never see if people see him as a returned prodigal son or a full-on criminal. (But we know from Kakashi he's been given a pass there as well.) But he never gives Naruto a run for the Kage seat. And no one ever recognizes that he's probably more powerful than almost anyone around with Itachi's eye and Pain's eye. Instead this huge ninja asset is just allowed to leave the village to do his own secret stuff.
— He never realizes his power outside of the village (so far) — Again, Sasuke is now crazy powerful. He could be a monk-type, forced to wander because he is so powerful that people want him and to stay in a village is to put others in danger. But no. He's never shown to give a crap about the village or his family. So what is he doing? Milling around and acting like Jiraiya, just waiting for stuff to happen so he can show up and flip his hair. His super skills are wasted out there. He doesn't have A or S-level targets. He isn't even given super-secret missions. He's just left on his own. And so far in the story, nothing has been made of his skills. He hasn't been targeted or shown that they've helped him in any real way.
All of these were paths that Sasuke's character could have taken. But, just like Naruto and Sakura, there are big holes in the development. The story ended with all of the build up and background going nowhere. But no, I don't see Sasuke as a villain either. He's the anti-hero to Naruto's hero. But none of the characters' stated goals were ever met (except Hinata's). So it's hard to look back at Sasuke's development and see where he changed. The story just ended for him too, and none of his reasoning makes any more sense than why Sakura gave up being a ninja/top medic to be a housewife and Naruto gave her up for Hinata.