Bring 6 quarts water to a boil and add 2 tablespoons salt. Peel the fibrous part off the stalks of cardoons and cut each stalk on the bias into pieces 1/4-inch thick. Drop the pieces into the boiling water and cook 15 minutes, until tender. Drain and allow the pieces to cool. Preheat oven to 350 degrees F.
In a 12 to 14-inch saute pan, heat the oil over medium heat until smoking. Add the onion and cook 7 to 9 minutes, until soft and light golden brown. Add the cooked cardoon pieces and cook until very soft, about 10 more minutes. Remove from the heat and cool. Place cool cardoon mixture into a mixing bowl and add besciamela, eggs and yolks, ricotta, and 1/4 cup Parmigiano and season with nutmeg, salt and pepper. Butter a bundt cake pan and sprinkle with breadcrumbs to coat. Pour the cardoon mixture into the prepared pan and place it in a roasting pan. Pour cool water into the roasting pan to come up 3 inches on the side of the bundt pan, and place it in the oven. Cook 1 hour, until sformato is just cooked through, then remove.
The sformato is cooked when a toothpick poked into the center exits clean. Allow to rest 15 minutes before edging with a thin knife and turning out onto a plate. Sprinkle with toasted bread crumbs and remaining grated cheese before serving warm.
In a medium saucepan, heat butter until melted. Add flour and stir until smooth. Over medium heat, cook until light golden brown, about 6 to 7 minutes. Meanwhile, heat milk in separate pan until just about to boil. Add milk to butter mixture 1 cup at a time, whisking continuously until very smooth and bring to a boil. Cook 10 minutes and remove from heat. Season with salt and nutmeg and set aside.
Recipe copyright 2000, Mario Batali. All Rights Reserved.