The difference is when the “thing” (rule or trigger) gets evaluated.
A trigger only gets evaluated when the trigger event happens:
(Door Contact Opens) (while Light Switch is On) (then do something…)
A rule gets evaluated every time the state changes from true to false or false to true so:
(Door Contact Opens AND Light Switch is On) (then do something…)
The trigger would only get evaluated when the door contact opens. Ever.
The Rule would get evaluated when the Door Contact Opens while the Light Switch is On and also when the Light Switch turns on while the Door Contact is Open.