Heat a large Dutch oven or large heavy-bottomed pot over medium-high heat. While pan is heating, pat your roast dry, and apply ½ teaspoon of kosher salt per pound of meat on all sides.
Add oil or butter to the Dutch oven and melt. Add beef and sear heavily on all sides, approximate 8 to 10 minutes per side. Remove meat from pot.
Add sliced onion with a pinch of kosher salt, and cook, stirring occasionally, for 3 to 4 minutes until soft and translucent.
Add shallots and stir to combine. Cook for an additional 3 minutes.
Add red wine to the Dutch oven and deglaze (scrape any browned bits from the bottom of the pan).
Add beef stock and bring to a boil. Reduce heat to medium-low and begin to simmer. Add the seared beef back to the pan and add thyme sprigs.
Partially cover and cook for approximately 3 - 4 hours until the meat is falling apart and the internal temperature registers 200 - 205°F. Remove meat from pan, cover and allow to rest while you prepare the gravy.
Gravy
Using a fine mesh sieve, strain the solids from the braising liquid, discarding the solids and reserving the liquid. There should be approximately 1 ½ cups remaining.
Let the braising liquid rest to allow the fat to separate to the top. Use a fat separator or a turkey baster to remove as much of the fat as possible.
Return the braising liquid to the Dutch oven and add an equal amount of water, approximately 1 ½ cups.
Bring mixture to boil over medium-high heat and simmer for 5 minutes
While the braising liquid is simmering, mix the butter and all-purpose flour together to form a paste.
Add the butter/flour mixture to the Dutch oven and whisk constantly until flour and butter is completely incorporated, approximately 3 to 4 minutes.
Add the reserved minced shallot and sprigs of thyme. Simmer for an additional 5-minutes until the gravy is thickened and it coats the back of a spoon.
Remove the thyme sprigs and add kosher salt and black pepper to taste. Spoon over meat.