Heat a large saute pan or dutch oven over medium high heat. Add butter and after it has melted add onions and saute for approximately 3 minutes.
Add mushrooms and continue cooking until mushrooms and onions are a golden colour. Onions and mushrooms will caramelize easier if stirred only minimally.
While cooking onions and mushrooms prepare the beef in a ziplock bag or bowl with flour, salt and pepper.
Remove onions and mushrooms to a dinner plate and reserve.
Shake beef in a bag or toss with tongs until pieces are evenly coated with flour, salt and pepper.
In the same pan add oil and heat, once the oil is hot remove beef from the bag with tongs, shaking off excess flour and cook beef turning with tongs until all sides are lightly browned. Add additional oil or work in two batches if needed so you don't crowd the pan.
In a large measuring cup or bowl combine beef broth, worcestershire sauce and tomato paste. Pour over browned meat.
Add reserved onions and mushrooms. Add dill and bay leaf.
Bring to a boil then cover and simmer for at least 90 minutes, I like to simmer for 2 hours brecause the meat becomes so tender. If you are working with a group then at this point you can transfer your dish home to simmer.
Ten minutes before serving add sour cream and heat though. Taste and add any additional salt and pepper if desired.
Serve on brown rice or egg noodles.