Place beef in a large Ziploc bag. Add flour, plus a dash of salt and pepper. Seal the bag and toss so that the beef chunks are coated in flour.
Heat 2 tablespoons of oil in a large heavy pot over medium-high heat. When the oil is hot (but not smoking), brown the beef on both sides until the chunks turn a rich color (about 8-10 minutes). Don’t stir the beef too much as it’s cooking – you want to allow it to sit on one side and brown before turning it over or stirring it again.
Add diced tomatoes, onions, bell peppers, carrots, potatoes (if using), beef broth, paprika, tomato paste and caraway seed. Increase the heat and bring to a boil, scraping the brown bits from the bottom of the pot with a wooden spoon.
Once the broth boils, reduce the heat to low, cover the pot, and allow the stew to simmer until the meat and vegetables are tender (approximately 2 hours). Remove lid during the final 10-15 minutes to allow the broth to thicken, if desired. Season with salt and pepper, to taste.
Serve goulash in bowls, or on plates over mashed potatoes or buttered noodles. Garnish with fresh parsley and a dollop of sour cream.