This question has probably already been answered somewhere but I'm having a hard time formulating it correctly which makes it hard finding anything about it.

Let's say I have items in my WinForms application which have an expiration date. I have more different conditions than this one but let's do it simple. I'd like to trigger an event when an item comes to expiration. What is the ideal way to do so? Checking every X minutes? I'm confused as if this is the best solution.

code samples in both VB.net or C# are welcome.

Thank you