Cut, wash and pat dry chicken. In a large bowl, pour buttermilk over chicken pieces. Cover and refrigerate for 2 to 3 hours or overnight.
Combine flour and seasonings in a brown paper or plastic bag, shake to combine.
Heat a deep skillet to 335 degrees, add enough oil or shortening to fill the skillet 1 ½ to 2-inches deep. Take chicken pieces out of buttermilk and allow excess to drip back into bowl. Put a few pieces of chicken in the bag, shake to coat evenly. Fry chicken in a single layer, cooking in batches, do not over crowd. Cook 8-10 minutes on each side.
Place fried chicken on a baking sheet lined with a cooling rack to remove excess oil, season with more salt & pepper if desired. If necessary, add more oil and continue until all of chicken is cooked. Discard buttermilk.
To make Gravy: Drain off all but about 3 tablespoons of oil, leaving all the browned bits from chicken. Stir in 3 tablespoons flour and stir over medium heat until flour is browned. Stir in 2 cups milk, cook and stir until thickened, season to taste with salt and pepper.
Cook’s Note: Grandma always soaked her chicken in buttermilk overnight and cooked it in cast iron skillets, over medium heat.