Soak the chicken pieces in buttermilk for at least 4 hours, preferably overnight.
Mix the flour, paprika, garlic powder, onion powder, salt, pepper, and cayenne in a shallow dish.
Remove the chicken from buttermilk and let the excess drip off.
Dredge each piece in the flour mixture. Let sit for 10 minutes, then dredge again.
Heat oil in a deep skillet or Dutch oven to 350°F (175°C).
Fry chicken in batches, turning occasionally, until golden brown and cooked through—about 15 minutes.
Drain on a wire rack over paper towels. Serve hot.