Yeah -- of all the pokemon Ash released, Lapras had the most engaging personality. Pidgeot we barely knew since he was mainly used to scout, Butterfree got an emotional episode, but really only in the one he was released, Primeape Ash barely connected with at all, etc. I could go on, but I won't :P.
Lapras was cool because it was very sweet, and while it had a peaceful nature, it really did try hard the few times Ash actually used it. It was also a baby, so instead of being conditioned to never want to battle like the rest of its pack, it ended up being pretty tough. And didn't it eventually become the new leader? Yeah, Ash definitely should've kept it. It was so hesitant to leave him that I'm sure it would've stayed.
But then again, there is the plot device thing. None of the episodes where Ash and pals almost miss the ferry would've happened if Lapras were there. So I guess it was more convenient for the writers to let it go, so they could drag on certain plot arcs more :P.