Bring the broth to a boil in a large soup pot over medium-high heat. Stir in the barley slowly and when it begins to boil, reduce the heat to slow but steady simmer. Cover and cook until the barley is almost tender about 45 minutes.
Heat the oil and butter in medium skillet over medium-high heat. Add the onion, celery, parsley & rosemary and saute until the onion begins to turn golden, around 5 minutes. Transfer this into the soup pot mixture, scraping skillet with rubber spatula.
Add the potatoes and carrots to soup, cook till tender about 30 min. Season with salt & pepper to taste. Serve in warmed bowls and sprinkle with cheese if desired.