In a large saucepan over medium heat, melt butter. Add onion and sauté 3 minutes or until tender. Add mushrooms and sauté 7 minutes or until tender.
In a small bowl, whisk flour into a small amount of broth until smooth, then stir into pan. Add remaining broth, bring to boil, and cook, stirring until thickened, about 2 minutes. Reduce heat and stir in half-and-half, salt and pepper. Simmer cream of mushroom soup uncovered, 15 minutes, stirring frequently.