In a large skillet, heat the olive oil over medium-high heat. Season the beef chuck roast with salt and pepper, then sear it in the skillet for about 4-5 minutes on each side until browned. Remove the beef and set it aside.
In the same skillet, add the chopped onion and cook for 3-4 minutes until softened. Stir in the minced garlic and cook for an additional 1 minute until fragrant.
Add the chili powder, cumin, smoked paprika, oregano, and a pinch of salt and pepper to the skillet. Stir to combine and cook for another minute.
Pour in the beef broth and diced tomatoes with green chilies, scraping up any browned bits from the bottom of the skillet. Return the seared beef to the skillet, cover, and reduce the heat to low.
Let the beef simmer for 3-4 hours until it is tender and easily shreds with a fork. Alternatively, you can place everything in a slow cooker and cook on low for 8 hours.
Once cooked, remove the beef from the skillet and shred it using two forks. Return the shredded beef to the skillet and stir to combine with the sauce.
Warm the tortillas in a dry skillet or microwave. Serve the shredded beef in the tortillas and top with avocado, cilantro, lime juice, diced onions, and queso fresco if desired.
Notes
For extra flavor, marinate the beef in the spices and olive oil overnight before cooking.
Try adding black beans or corn to the filling for added texture and nutrition.