First, peel and dice your potatoes into even pieces for consistent cooking. Trim and chop the green beans into 1-inch pieces. Boil potatoes until tender, then drain and set aside.
In a skillet, melt butter over medium heat and whisk in flour to create a smooth roux. Slowly add milk while stirring until the sauce thickens. Season with salt and pepper, then stir in half of the cheddar cheese for extra creaminess.
Mix the cooked potatoes, green beans, and onions with the sauce until evenly coated. Pour into a greased baking dish and spread breadcrumbs on top, then sprinkle the remaining cheese over it.
Place the casserole in a preheated oven at 350°F (175°C) for 25–30 minutes. Bake until the top is golden brown and bubbling, letting it cool slightly before serving.