The question 'who do you prefer to end up with Shinichi' is subjective, it is based on personal opinion. However, if we're talking about who is the better couple, then there is really only one answer. ShnichixShiho
The second question may seem subjective too at first but there are some distinct differences, if we're talking about the better couple then there are some measures that we can use to answer the question. From a viewer's point of view, and from a fan's.
Viewer's POV: let me start by saying that i fully understand the DC is not romance anime, however if you're going to introduce a romantic aspect to the show it has to be on par with everything else. The most important thing for viewer's to get invested in a relationship between two characters is why they are in love, what are the events that lead to these two people to form a special connection. In shinran's case, it appears that was friendship. There is nothing special about their relationship, hell you can attribute their 'cute' moments to any two characters on any other show. I understand the appeal of the couple at first but as the series dragged on, as a viewer i was waiting for a reason to care about Ran and her relationship with Shinichi but Gosho has failed to deliver. We can tell that they love each other but they play no role in each other's lives. Basically if they weren't in 'love' they wouldn't need each other. And so it is very hard for me as a viewer to care about them. I had no problem with RAn until Haibara was introduced, because that's when we first got a glimse of what could become. The girl from the organization was such a genious idea, and her personality drew viewer's attention. But when the connection between her, Akemi and shinichi was made, that is when the foundation were set to develop and incredibly exciting and complex relationship. Haibara and Conan share very little in common, in fact their intelligence may be the only thing aside from the BO, and so watching them try and cope with each other while growing closer is really exciting to see. The show is somewhat based on Sherlock Holmes, and the way i see it we are faced with two options, Irene Adler or Mrs. Hudson, and i think there is a clean winner.
Fan's POV: I have been watching the series for a decade now, so casual fans may not understand what i'm about to say. Before i begin i want to say the i love this show more than any other. To me no tv show or movie will ever come close to DC. And after 10 years of watching a show, i started to actually care about the characters. Shnichi is working with the FBI and the CIA and the special police, he is chasing down a criminal orginazation that global law enforcement agencies have been chasing for years. When it is all over, i can't imagine him going back to being the arrogant highschool detective, solving pity thefts and murders out of jealousy. I can't imagine him cutting ties with the FBI. I can't help but feel like somewhere inside of him he enjoys hunting down global criminal syndicates and as soon as the BO is gone there will be another and he will be there chasing them. Either way i don't see a possible way for him to go back to being a normal teenager. Here's where Shiho comes in, like i said earlier they are not alike but they each have what the other desperately needs. Shiho knows the life that Shninichi is leading himself into, she knows how it feels to hurt and she knows how it feels to lose. One day he will too, and he is going to need someone when it happens. He doesn't need someone to wait for him, he needs someone fighting alongside him and Ran could never do that, atleast not at a BO level. Shiho on the other hand needs someone that guide her through the troubles of everyday life, while at the same time gives her that opportunity to prove to herself that she can infact do good. In theory that could be anyone, but after all they went through together, and after he set the bar so high, it seems improbable that anyone can ever rise to that level. It may seem like i hate Ran, but i don't. As a character she is deeply flowed, but as a true fan i care about her deeply. My main argument against ShinRan has always been that Shinichi doesn't deserve Ran. As proof let me ask you this, what do you thing Shinichi would do if he could go back in time to the night he got shrunk and knowing fully well what would happen, would he still follow Gin? he would do it differently, but he would definitely chase after them which is not fair to Ran. To Shinichi, Ran will never come first.