Most developers reach for Hangfire for background jobs, but .NET has IHostedService and BackgroundService built right in. By inheriting from BackgroundService and overriding ExecuteAsync(), you can run recurring tasks, queue processors, or cleanup jobs — all without any third-party library. Combine it with PeriodicTimer (introduced in .NET 6) for clean interval-based execution. For simple scheduled tasks like sending daily emails, cleaning temp files, or syncing data — BackgroundService is lightweight, testable, and requires zero extra packages.