Yes, better to close unused accounts.
Reason is, your credit report also shows besides score (and numerous other things) how much "available credit" you have, basically how much debt you have access to.
It also shows what percentage of that credit you have used (so say if you have access to £50,000 of credit across your accounts and you had £25,000 used, that would be 50% credit utilization) so creditors may question why you need more, and how would you manage more along with what you owe? Likewise if you were at 95% utilization for example, applying for more would seem you need credit to get by so thus a risk.
The credit "score" is actually tosh, no one has a set score.
All that happens is when you apply for credit, the company looks to see if you would make an "ideal" customer for that company and that you are a "good risk".
Even if you have a 999 score, if the company in question believes you are not the best "ideal customer/good profit risk" for them, and they are in a position to do so, they could turn you down.
Each company is different, hence why one may decline you and another accept you.