Combine buttermilk, mayonnaise, white wine vinegar, and garlic in a jar. Seal and shake well. Stir in dill, salt, and pepper. Refrigerate dressing.
Place a steamer insert into a saucepan and fill with water to just below the bottom of the steamer. Bring water to a boil. Add green beans, cover, and steam until tender, 4 to 5 minutes. Drain and let cool.
Preheat grill for medium heat and lightly oil the grate. Brush salmon with vegetable oil; season with salt and pepper.
Cook salmon on the preheated grill until flesh flakes easily with a fork, 6 to 8 minutes per side.
Layer lettuce, tomatoes, corn, cucumbers, green beans, and hard-boiled eggs in a large glass trifle bowl. Place salmon on top. Garnish with bacon and spring onions. Serve dressing alongside.