My first Tedx Talk: From Pain to Purpose – My TEDx Journey

August 30, 2025 – A date etched in my life for more than one reason. Exactly 11 years ago , I got engaged. And on that very same date this year, I received a life-changing opportunity: my first TEDx talk , hosted at GGI under the inspiring theme “Chase the Impossible.” Standing on that red dot, I felt a mix of emotions — excitement , nervousness , and the quiet ache of loss , having lost my wife, whose memories remain deeply rooted in my heart. In my talk, I shared a story born in the midst of COVID-19 — a time when Ms. Renu and I were both navigating personal grief in different ways. It was during this difficult phase that Mr. Chaitanya brought us together — blending Renu’s deep nutritional expertise with my technical background . That collaboration gave birth to a vision: A platform that could reduce the time it takes to create personalized diets , enabling dieticians to focus more on care, empathy, and connection — and patients to avoid long queues and delays. What began in ...

Choosing between IConfiguration and IOptionsSnapshot in a .Net Core application




If you are building a .Net Core api and are using appsettings and/or Azure App configuration, you might have this question in mind. Since, this is the AI era, I keep asking my queries to chatgpt or copilot or bard and use my blog as the notes for myself and for my readers:

Here is the prompt:

What is the difference between IConfiguration and IOptionsSnapshot. When I am using Azure App Configuration in a .net core api what should I use out of the two?

Let’s delve into the differences between IConfiguration and IOptionsSnapshot, especially in the context of using Azure App Configuration in a .NET Core API.

IConfiguration:

  • PurposeIConfiguration provides access to configuration settings (such as app settings, connection strings, etc.) from various sources (e.g., JSON files, environment variables, command-line arguments).
  • Lifetime: It is a singleton service, meaning it retrieves configuration values once during application startup and caches them.
  • Use Case:
    • Suitable when you don’t expect your configuration values to change frequently.
    • Useful for reading configuration settings at application startup.
    • Not ideal for scenarios where real-time updates are crucial.

IOptionsSnapshot
  • PurposeIOptionsSnapshot is designed for use with transient and scoped dependencies (e.g., per-request services in ASP.NET Core).
  • Lifetime: It is scoped, meaning it retrieves the most up-to-date configuration values at the time the IOptionsSnapshot<T> object is constructed.
  • Use Case:
    • Perfect when you expect configuration values to change during the lifetime of a request.
    • Provides a snapshot of the options, ensuring consistency within a single request.
    • Allows you to update settings while the application is running and immediately see the updated results.

Choosing Between Them

      • If your configuration values remain relatively static, use IConfiguration.
      • If you need real-time updates within a request scope, opt for IOptionsSnapshot.
      • In your scenario of using Azure App Configuration, consider the following:
        • If you want to read configuration settings during startup or infrequently, stick with IConfiguration.
        • If you need dynamic updates within a request, go for IOptionsSnapshot.

    Remember that both serve different purposes, and your choice depends on the specific requirements of your application.