Difficult one for me as Keano was one of my footballing heroes growing up but I think overall Vieira was a shade ahead of him. Some of it was down to their temperaments. Vieira was a dirty player and got himself sent off a fair share of times like Keane but Vieira was more calculating and in control. Keano would get the red mist and turn in to a psycho and make bad decisions.
I think in terms of raw ability Vieira was a fair bit ahead of Keane. He was a much more natural cultured passer of the ball and his extra height gave him an advantage as well, he could lollop around the field, reach out a boot and nick the ball off somebody where Keane would have to run everywhere at 90 miles an hour and slide in to people. Given that in terms of overall influence in the Premier League they were neck and neck for many years, thats got to be respect to Keane for level pegging with a guy with more talent.
They both presented problems off the field tbh. One thing people often forget about Vieira was that he was often quietly disruptive every off season because he was surrounded by transfer stories linking him to moves abroad but also even to Man United. Year after year United were supposed to be in for him. Vieira never seemed to rule himself out of these moves, I think he liked cultivating the idea that he was in demand and Arsenal shouldn't take him for granted. If Keane had been linked with Arsenal I bet he would have come out and said it was a load of rubbish and he was staying at United. I'm sure I remember about 10 years ago hearing some phone in with Arsenal fan saying stuff like "we love Paddy but we can't go through this circus every year, if he wants to go let him go".
Keane was also good at looking after his own interests but he kept the fans onside eg there was a chant at Old Trafford "we all agree, Keano is worth more than Edwards" chant on the terraces when he was pushing for an improved contract. He kept the fans onside by insisting on his loyalty to United, to the fans, even if he would spout off about the prawn sandwich brigade etc.
Where Keano was not helpful IMO is the way he treated his teammates. It's one thing being a driven and inspiring leader, but I don't think Keane was that. He was a driven player, and he led from the front, but I don't think he was a great leader in the way that say Tony Adams or Lothar Matthaus was. From reading various players' autobiographies it seems like Keane went out of his way to intimidate his teammates and make them feel crap about themselves. When new players joined United he would smash passes at them and if they slightly miscontrolled them he would lay in to them saying this is United now, we have higher standards. If any of his teammates were struggling with confidence Keane wouldn't be helping support them, he would shout at them that they were rubbish. Probably all part of making himself feel better at the expense of his mates. Also I remember reading I think Lee Sharpe's book where Sharpe - who was one of Keane's best mates in the early days - had various stories of having to try and calm Keane down from him wanting to pick fights with his teammates when drunk, he was always probing for players personal weaknesses....Gary Pallister who was one of Keane/Sharpe's original clique buddies stopped talking to him because Keane kept going on about stuff about his wife.
I think Keane was a superb player for United but tbh I wish he had just realised sometimes that he was part of a team and he was not bigger than the great players around him. I also think deep down (and I hate saying this) that Keane maybe thought he was better than he actually was. He has never been short of an opinion on his former teammates: in his book he said things implying Cantona, Stam and Schmeichel were overrated, and he's said that stuff about Giggs too "just because you have a great career doesn't mean you were a great player". I nearly fell off my chair when I heard Keane moaning about SAF's book when he said "the gaffer goes on about loyalty but what about his loyalty to those players that won him all those trophies"....FFS Keano you have never been short of spouting off about your own ex teammates.
Because of what he was like off the field, Keane was always treading a fine line where he had to be good - really good - to avoid the negatives of his behaviour outweighing the positives of what he contributed to United. Most of the time those positives outweighed it but the way it ended with SAF....that was always on the cards, you knew when he started to go past his best as a player Fergie would have him out. The same happened with Paul Ince a decade earlier.
Overall would I have swapped Vieira for Keane at United.....loyalty to a hero means most United fans would not agree with me here but personally I would. Keane would not have worked under Wenger at Arsenal so he would have ended up somewhere else, if United had Vieira I think you could have seen nine titles in a row at Old Trafford because Arsenal would not have won those three titles they did and nobody else would have challenged United with PV.