Trim the meat and cut it into bite-sized chunks. In a large bowl, mix the flour with a teaspoon each of salt and pepper. Add the beef and toss so that all the chunks are dusted with flour.
Heat a tablespoon of oil in a large frying pan and brown the beef in small batches, setting each batch aside while you brown the next. Take care not to crowd the pan or the beef will steam rather than brown.
Meanwhile, heat a little oil in a large heavy-bottomed pan, add the onions, carrots, celery, red pepper and garlic. Cook gently for about 10 minutes until they start to soften.
Add the beef, paprika, caraway seeds, tomato purée and bay leaves, then pour in the beef stock.
Stir well, cover the pan and simmer for at least 1½ hours until the beef is starting to get tender. Add the potatoes and continue to simmer for another 30 minutes. Check the seasoning before serving.
Serve the soup in bowls with a generous swirl of soured cream and a good sprinkling of parsley.