In a large bowl, whisk together milk, vinegar, salt, and pepper to create a buttermilk marinade.
Submerge chicken pieces in the marinade, cover, and refrigerate for at least 2 hours (overnight for best results).
In a separate bowl or zip-top bag, combine all dredging ingredients and mix thoroughly.
Remove chicken from the marinade and let excess drip off. Dredge in the flour mixture, coating evenly. Let coated chicken rest for 5–10 minutes.
Heat oil in a large skillet to 350°F. Use a thermometer for accuracy.
Carefully place chicken pieces in the oil, skin side down. Fry 3–4 pieces at a time without overcrowding.
Cook each piece for 15–18 minutes, flipping every 2 minutes, until golden and internal temp reaches 165°F.
Transfer to a wire rack or paper towel-lined tray and let rest for 10 minutes before serving.