Place broccoli in a large skillet with ½ cup water. Cover and simmer 4-6 minutes or until tender crisp. Drain well.
Meanwhile, melt butter in a medium skillet over medium heat. Add onion powder, cream, broth, and cream cheese. Cook until smooth and slightly thickened, about 5 minutes.
Remove from heat and stir in ¾ cup cheddar cheese and ¼ cup Swiss cheese until melted. Season with salt and pepper.
Toss broccoli and ham with the cheese sauce. Place in a greased 2 quart casserole dish and top with remaining cheese.
Bake 25-30 minutes, or until cheese is melted and bubbly.
Notes
Allow cream cheese sit at room temperature until it softens. This will make it easier to blend.Cut broccoli florets into bite-sized pieces and freeze the stalks in zippered bags for future soup or stew recipes.Refrigerate leftover casserole covered for up to 4 days. Reheat in the oven or on the stovetop.Freeze leftovers in zippered bags with the date labeled on the outside up to 4 weeks.