Зачем в nextjs в Link делать a?
Не писать тег а в комментах отмечено как Deprecated https://github.com/vercel/next.js/blob/feb10f45c10...
, лучше писать как в документации
Нет, не обязательно.
Но если тебе придется стилизовать ссылку, то стилизовать Link не получился, поэтому ты будешь использовать что-то вроде
const StyledLink = styled.a`
color: #f00;
`

<Link href={} passHref><StyledLink>My Link</StyledLink></Link>
Не забывай про атрибут passHref в случае, если нужно прокинуть href стилизованной ссылке