Remove short ribs from refrigerator 30 minutes before cooking to bring to room temperature. Pat completely dry with paper towels and season all sides generously with salt and pepper.
Heat olive oil in a large cast iron skillet over medium-high heat until shimmering. Working in batches, sear short ribs for 2-3 minutes per side until a deep golden-brown crust forms. Transfer seared ribs to the slow cooker and don't clean the pan.
Reduce heat to medium and add diced onion to the pan, sautéing for 4-5 minutes until softened and translucent. Add minced garlic and cook for 1 minute until fragrant.
Pour in red wine and use a wooden spoon to scrape up all browned bits from the pan bottom. Simmer for 2-3 minutes to cook off alcohol, then stir in beef broth, tomato paste, and Worcestershire sauce until tomato paste is fully dissolved.
Pour the sauce mixture over the short ribs in the slow cooker. Nestle carrot pieces around the ribs and add rosemary, thyme, and bay leaves. The liquid should come about halfway up the ribs.
Cover and cook on low for 7-8 hours or on high for 4-5 hours until meat is fork-tender and pulling away from the bones. Resist the urge to lift the lid during cooking.
About 30 minutes before serving, remove bay leaves and herb sprigs with tongs. For thicker gravy, remove ribs and carrots to a platter, whisk cornstarch with cold water, and stir into cooking liquid on high for 10-15 minutes until thickened.
Return ribs to slow cooker or arrange on a serving platter. Ladle rich gravy over the meat and garnish with freshly chopped parsley. Serve immediately with creamy mashed potatoes or buttery egg noodles.