Crumble and brown the sausage in a large skillet (9-10") over medium heat. A cast iron skillet is best.
When the sausage is browned, pour off all but 1 Tbs of the fat.
With the heat off, add the flour to the skillet and mix it around so that the pieces of sausage become coated (they start to look like little white powdered donut holes). If the flour seems to disappear, add a little more (1/4 cup or so).
Place the skillet back on the burner and set to medium high. Stir and cook the sausage with the flour on it for at least 2 minutes. The longer you cook the sausage and flour the darker your gravy will be. Stop at 2 minutes for a light colored gravy. Cook longer for a darker gravy. Do not cook longer than 4 minutes.
Add the milk all at once. FROM THIS POINT ON, DO NOT STOP STIRRING. You will likely hear the milk sizzle and that is OK. Use your wooden spoon to stir and scrape up the flavorful bits from the bottom of the pan. Keep stirring and scrape the bottom and the side often. When you begin to notice small bubbles forming at the side of the pan, quickly reduce the heat to medium low.
Heat the gravy at medium low until it is the consistency that you want your gravy. Understand that if the gravy starts to bubble up, you may have to slide it off the burner suddenly. Do not stop stirring. You can place it back on the burner when it slows down.
When the gravy is near the consistency that you prefer, taste it and add salt and pepper to your desired amount. (This varies greatly depending on the sausage you chose and your own personal tastes). Once seasoned, allow to sit for about 5 minutes before serving and it will thicken more.