Pat the beef cubes dry with paper towels and season with salt and pepper. Heat 2 tablespoons of oil in a large Dutch oven over medium-high heat and brown the beef in batches (don't crowd the pan!), about 3-4 minutes per side. Remove and set aside.
Add the remaining tablespoon of oil to the pot and reduce heat to medium. Add the diced onions and cook for 8-10 minutes, stirring occasionally, until they're soft and golden. Add the garlic and cook for another minute.
Remove the pot from heat (this prevents the paprika from burning) and stir in the paprika, caraway seeds, and tomato paste. Mix well to coat the onions.
Return the pot to the heat and add the beef back in along with any accumulated juices. Pour in the beef broth, add the bay leaves, and bring to a boil. Reduce heat to low, cover, and simmer for 1½ hours, stirring occasionally.
Add the bell peppers and potatoes to the pot. Continue to simmer covered for another 45 minutes to 1 hour, until the beef is fork-tender and the potatoes are cooked through.
Remove the bay leaves and taste for seasoning, adjusting salt and pepper as needed. Serve hot with a generous dollop of sour cream and a sprinkle of fresh parsley. Store leftovers in the fridge and reheat gently—the flavors will be even more amazing the next day!