In a bowl, whisk together olive oil, orange juice, lime juice, garlic, cumin, chili powder, smoked paprika, salt, and black pepper to make the marinade.
Place the steak in a resealable plastic bag or shallow dish and pour the marinade over it. Seal or cover and refrigerate for at least 2 hours, or up to 8 hours for best flavor.
Remove the steak from the marinade and let it come to room temperature for about 20 minutes before grilling. Discard the used marinade.
Preheat a grill or grill pan over medium-high heat. Lightly oil the grates to prevent sticking.
Grill the steak for 4–5 minutes per side for medium-rare, or until it reaches an internal temperature of 130–135°F (54–57°C). Adjust cooking time based on thickness and desired doneness.
Transfer the steak to a cutting board and let it rest for 5–10 minutes. Then slice it thinly against the grain.
Warm the corn tortillas on the grill or in a dry skillet over medium heat for about 30 seconds per side.
Assemble the tacos by placing sliced carne asada on each tortilla. Top with chopped onion, cilantro, queso fresco, avocado (if using), and a squeeze of lime juice. Serve with salsa or hot sauce on the side.
Notes
For best results, marinate the steak for at least 2 hours. Serve immediately for the freshest flavor.