I think both sherlock and moriarty has mental diagnoses somewhat applickable to them, but calling either insane is cheap. They are both deranged in different ways, sherlock's derangement happens to help people, moriarty's happens to hurt people. But they are both really just after the same thing, not being bored.
Moriarty is a real psychopath who gives a shit about the lifes of other people. Psychopathy is an ASPD (Antisocial Personality Disorder) like Sociopathy and Narcissism. Sherlock belongs to the people with ASD (Autism Spectrum Disorder).
I can't bring myself to call Sherlock a sociopath. I think deep down he has a heart that can feel for other people, but he was born so different and so asocial anyway that he got more and more distant and calloused as he grew older. Mycroft strikes me as a genuine sociopath; able to care not really to empathize. I'm probably just imagining things to support my love of Sherlock, though. (sighhhh . . .)
It doesn't exist genuine sociopaths, they are pathological liars, betrayers and manipulators who use people just for own advantage and purpose. They are blenders, chameleons, wolves in sheeps clothing. And just because Mycroft is unsociable, and doesn't like people and social events, doesn't make him a sociopath. Sociopathy has to do with traumatic experiences in early childhood like violence in the family like physical or mental abuse or lack of affection. It's something I can't really find in the Holmes family.
Sociopath is a bad word for him. What they used to call sociopath is what they would call antisocial personality disorder today. That personality disorder is highly destructive and Moriarty would be more like a sociopath/antisocial. Sherlock is more like a narcissist or schizoid. I wonder where the writer's got the idea to put that poorly formed self diagnosis into his mouth?