In a 9-½ inch diameter nonstick ovenproof skillet, cook the bacon. Remove to drain on a paper towel and wipe out the skillet.
Heat the oil over a medium flame. Add the onion and sauté until translucent, about 4 minutes. Add the potato, garlic, salt and pepper, and sauté over medium-low heat until the potato is tender and golden, about 15 minutes.
Preheat the broiler. In a medium bowl, whisk the eggs, milk, Parmesan cheese, bacon and basil to blend. Stir the egg mixture into the potato mixture in the skillet.
Cover and cook over medium-low heat until the egg mixture is almost set, but the top is still runny, about 2 minutes.
Place the skillet under the broiler and broil until the top is set and golden brown, about 4 minutes. Using a rubber spatula, loosen the frittata from the skillet and slide it onto a plate. Cut the frittata into wedges and serve.