In a large saucepan, cook onions in butter over low heat until tender and transparent, about 20 minutes.
Stir in flour. Gradually add broth and milk; cook and stir over medium heat until bubbly. Cook and stir for 1 minute longer; reduce heat to low. Add mozzarella cheese and stir constantly until melted (do not boil). Season to taste with salt and pepper. Serve with croutons if desired.
