ничего не лучше и не хуже. У обоих вариантов свои плюсы и минусы. Если компонент где используется subscribeToMore размаунтится, то подписка и её колбэки останутся. Но если компонент снова смаунтится, то subscribeMore снова сработает и оформится ещё одна подписка. Это нужно учитывать и на крайняк можно через реф контролировать.
subscribeToMore в отличие от useSubscription обогощает кэш квери к которой относится. В случае с useSubscription это нужно будет делать вручную через writeQuery, либо writeFragment. С другой стороны, useSubscription не привязана не к какой квере и её можно без проблем запихнуть в отдельный компонент красиво.