I'm an old soul, so it still sounds kinda silly (to me) to "buy" domain-names.
But in a world where 'possession is most of the law' (i.e. where a simple 'agreement by most not to take domain-names that someone else is already using' won't protect the few who don't agree),you "need" to pay people to 'reserve your domain-name' (recording that you had it first & defending your exclusive rights to it should someone else try to claim it.)
(I obviously don't "own" a domain-name ... but there may be one-or-two which only I use and which everyone else stays away from ;-) )
First of all, i try to have an attractive domain name. For this purpose i think about it or use an Domain Name Checker after that I use to register my domain from GoDaddy. I have no problem working with GoDaddy.