Grease a 23 x 33 cm / 9-by-13-inch baking dish with butter or vegetable oil. Whisk together eggs, milk, sour cream, and lemon zest. Stir in red onions, capers, red pepper and dill.
Spread the baguette cubes in the prepared pan. Add the salmon and cheese, then top with the egg mixture and gently toss to combine. Cover and refrigerate overnight or up to 24 hours.
Remove bread pudding from the refrigerater and let it sit at room temperature at least 30 minutes. Preheat oven to 170°C / 350°F.
Bake bread pudding for 40 to 45 minutes. Keep an eye on it as you will need to cover the pan with tinfoil if the top begins to brown too quickly.
Remove bread pudding from the oven and let rest for 10 minutes before slicing to serve. Garnish with fresh dill sprigs and lemon wedges.