Cook pasta according to the directions on the package.
In a saucepan, melt butter over medium heat and stir in 3 tablespoons flour.
Add 3 cups milk and reduce heat to low.
Stir in cheese slowly until melted and pour over cooked pasta.
Transfer the macaroni and cheese to a baking dish and refrigerate for 1 hour or until cold.
Heat oil in deep fryer or heavy skillet to 375°F.
Using a cookie scoop, scoop the macaroni and cheese into equal-sized balls.
Create a dredging station with three different bowls, one with 1 cup flour, one with a mixture of 4 beaten eggs and 1/2 cup milk and the final one with 2 cups panko breadcrumbs.
Coat each macaroni and cheese ball in flour, dip in egg wash and cover in panko breadcrumbs. Repeat this process again if necessary.
Wrap each macaroni and cheese ball in two slices of bacon — one slice going in each direction — and secure bacon with toothpicks.
Fry Bacon Wrapped Macaroni and Cheese Balls in batches for 2 minutes or until the breading is golden brown and the bacon is cooked.
Drain on paper towels and serve with ranch or your preferred dipping sauce.