3 heads broccoli (or 2 heads broccoli and 2 broccoli stems)
1 tablespoon butter
2 tablespoon water
1 onion, diced
2 cloves garlic, minced
1 cup whole milk
3 eggs
1 pinch nutmeg
1/4 teaspoon freshly cracked black pepper
1/4 teaspoon salt
1 cup shredded cheddar cheese
1/2 cup shredded mozzarella cheese
5 slices stale bread, torn into pieces
Preheat the oven to 350 degrees.
Break all of the florets off of the heads of the broccoli. Reserve 2 cups of florets. Roughly the remaining florets and stems.
Heat the butter in a pot over medium heat. Add the onion and sauté until slightly browned, about 10 minutes. Add the garlic and cook until fragrant, about 1 minute, then add the chopped broccoli and stir to combine. Add about 2 tablespoons of water and cover to steam for about 4 minutes.
When the broccoli is cooked, transfer it to a blender or food processor. Process until smooth and creamy, adding a bit of the milk if needed to get the blades to move.
Transfer the broccoli purée to a bowl. Add the eggs, one at a time, the remaining milk, the nutmeg, the pepper, and the salt. Add about half of each of the cheeses to the mixture and stir well to combine.
Arrange the bread in a buttered 9x13-inch casserole dish. Pour the broccoli mixture over the top, and allow to sit for about 10 minutes. Top with the reserved broccoli florets.
Bake for about 20 minutes, then add the remaining cheese. Continue baking for about 20 more minutes, until the broccoli custard is set. Allow to cool slightly before serving.