Separate the broccoli florets from the stems and then pare the stems with a knife. Leave the floret clusters whole unless they're especially large; if so, cut them in half.
Bring a large pot of salted water to a boil over high heat. Add the stems and cook 4 minutes; add the florets and cook both for another 6 minutes (Alternatively, put them all in at the same time and remove the florets first). With a sharp paring knife, check to see if the broccoli is tender all the way through. With tongs or a slotted spoon, transfer the pieces to ice water as they're done. When cool, drain the broccoli well and chop it finely.
Heat the broiler and position a rack 8 inches from the element. In a large bowl, combine the eggs, broccoli, cheese, basil, 1 tsp. salt, and the pepper.
Heat the butter and oil in an ovenproof 10-inch nonstick skillet over medium heat. When the butter and oil are hot, add the egg mixture, spreading it evenly. Turn the heat to very low and cook until the mixture is mostly set, 15 to 18 minutes. The surface will still be undercooked, but the edges will be firm and visibly lighter in color. Move the skillet to the oven and broil until the frittata feels just firm throughout, about 5 minutes.
Set a cutting board or a large platter over the skillet and invert both. Let the frittata cool to room temperature before cutting into wedges to serve.