Combine the lime juice, 1 tablespoon of olive oil, soy sauce, Worcestershire sauce, cumin, chili powder, paprika, oregano, cayenne pepper (if using), salt, and pepper in a bowl. Add the sliced steak, toss to coat, and marinate in the refrigerator for at least 30 minutes, or up to 4 hours.
Heat the remaining 1 tablespoon of olive oil in a large cast iron skillet or heavy-bottomed pan over medium-high heat until shimmering.
Remove the steak from the marinade, letting excess drip off. Cook the steak in batches, ensuring not to overcrowd the pan, for 2-3 minutes per side until nicely browned and cooked to your preferred doneness. Remove the steak from the skillet and set aside.
Add the sliced onions and bell peppers to the same skillet. Cook, stirring occasionally, for 5 to 7 minutes until they begin to soften and char slightly.
Add the minced garlic to the vegetables and cook for 1 minute until fragrant.
Return the cooked steak to the skillet with the vegetables. Toss everything together quickly to heat through, about 1 minute. This step creates the signature sizzle.
Serve immediately with warm tortillas and your choice of toppings.
Notes
For the best texture, slice the steak against the grain after it has rested slightly.
If you prefer a less intense flavor, you can use sheet pan steak fajitas: toss the marinated steak and vegetables with oil and roast at 400°F (200°C) for 15-20 minutes.
To achieve a slow cooker steak fajitas version, combine the marinated steak, peppers, and onions in the slow cooker and cook on low for 6-8 hours or high for 3-4 hours. Drain excess liquid before serving.