System.Threading.Timer not firing after some time

Are you keeping a reference to your timer somewhere to prevent it being garbage collected?

From the docs:

As long as you are using a Timer, you
must keep a reference to it. As with
any managed object, a Timer is subject
to garbage collection when there are
no references to it. The fact that a
Timer is still active does not prevent
it from being collected.

Leave a Comment