Heat the olive oil in a large skillet over medium heat.
Add the chopped onion and cook for 3–4 minutes until softened.
Add the minced garlic and cook for about 30 seconds until fragrant.
Add the ground beef and cook for 6–8 minutes, breaking it up with a spoon until browned and cooked through.
Drain excess fat from the skillet if needed.
Stir in the tomato paste, chili powder, paprika, cumin, oregano, salt, and black pepper.
Pour in the beef broth or water and stir well.
Simmer for 4–5 minutes, stirring occasionally, until the liquid reduces and the beef mixture becomes flavorful and slightly thick.
Stir in the fresh lime juice and remove from the heat.
Warm the taco shells according to the package instructions.
Fill each taco shell with the seasoned beef mixture.
Top with shredded lettuce, cheddar cheese, diced tomato, red onion, avocado, and fresh cilantro.
Add sour cream, salsa, jalapeños, or guacamole if desired.
Serve immediately with fresh lime wedges.