dis/advantages of compiling in-kernel over kldload

From: void <void_at_f-m.fm>
Date: Wed, 12 Jul 2023 17:45:02 UTC
Hello hackers@

(for context this is on recent -current)

in man(4) pf we have

SYNOPSIS
      device pf
      options PF_DEFAULT_TO_DROP

no real mention if it being loaded in rc.conf.

But when it is loaded in (just) rc.conf with pf_enable=YES
it gets loaded as a kld. 

Is there an advantage in compiling it in the kernel?
Is there a disadvantage in it being compiled in the kernel?

If it's compiled in the kernel, does the system still require
pf_enable=YES in rc.conf?
--