1. Place a rack in upper-middle of oven and heat to 350 degrees. Spread bread on a baking sheet and toast until golden brown and crisp, about 20 minutes, stirring halfway through. Let cool to room temperature, about 10 minutes.
2. Meanwhile, grease an 8" baking dish. Whisk milk, half-and-half, maple syrup, eggs, egg yolks, vanilla, salt, nutmeg, and cardamom in a large bowl. Add cooled bread, stirring to coat, and let sit until bread is saturated, 25 to 30 minutes, stirring and pressing bread into liquid occasionally.
3. Transfer mixture to prepared dish and press into an even layer, then sprinkle butter over top. Bake until top is golden brown and center bounces back when gently pressed, about 50 minutes.
4. Transfer pudding to a wire rack and let sit at least 30 minutes before serving.
Source: Hannaford fresh Magazine, March - April, 2019