We’ve all written that one-liner HttpClient call that “just works” in a quick console app or small feature. It’s the fastest way to get data moving, but that simplicity is deceptive. As applications grow, those quick calls often turn into duplicated logic, hardcoded strings, and brittle integrations that are difficult to test and painful to maintain. In modern applications, APIs are a critical dependency—and how you consume them matters just as much as how they’re built.
In this session, we’ll move beyond the “quick and dirty” approach and treat API consumption as a first-class architectural concern. We’ll look at common pitfalls like improper connection lifetimes, messy error handling, and subtle production issues such as socket exhaustion and DNS blind spots. You’ll learn how HttpClientFactory and typed abstractions help bring structure, testability, and reliability to your integrations. By the end, you’ll have a battle-tested strategy for building API integrations that don’t just work on your machine, but actually survive the chaos of production.