Heat the oil in a large skillet or Dutch oven over medium-high heat. Add the chicken thighs, skin-side down, and brown them for about 3-4 minutes per side. You don’t need them cooked through yet; you just want a nice color and flavor on the surface.
Transfer the browned chicken to a plate. In the same pot, add the onion and a pinch of salt. Sauté until softened and translucent, about 3 minutes. Add the garlic and ginger, cooking for another 30 seconds until they’re fragrant but not burnt.
Stir in the Thai red curry paste. Cook for a minute or two, until the paste loosens and the room fills with a warm, earthy aroma.
Return the chicken to the pot. Pour in the coconut milk and chicken broth. Scrape any browned bits from the bottom of the pan; they’re flavor gold. Bring to a gentle simmer.
Add the cubed sweet potatoes. Cover and simmer on a low boil or medium-low heat for about 15-20 minutes, until the potatoes are tender and the chicken is cooked through. If you’re using bone-in thighs, you want the internal temperature to reach at least 165°F (74°C).
Stir in the fish sauce, brown sugar, and lime juice. Taste and adjust—more fish sauce for saltiness, more sugar for sweetness, or a squeeze of lime for brightness.
If you like a thicker sauce, uncover the pot and simmer for a few more minutes to reduce. If you prefer it looser, add a splash more broth. Once the potatoes are tender and the sauce has a glossy coat, you're ready.
Ladle into bowls, scatter with cilantro or Thai basil, and, if you like, a sprinkle of crushed peanuts for crunch. Serve with steamed jasmine rice to soak up every last drop.