Grilled Fish Tacos with Avocado Relish, Smoky Tomato-Greek Yogurt Crema and Red Cabbage-Citrus Slaw

Save Recipe
  • Level: Intermediate
  • Total: 1 hr 10 min
  • Active: 1 hr 10 min
  • Yield: 6 to 8 servings
Share This Recipe


Avocado Relish with Cilantro Pesto:

2 cloves garlic, crushed

1 serrano chile, seeded and roughly chopped 

2 tablespoons pine nuts 

Kosher salt and freshly ground black pepper 

1/2 cup fresh cilantro leaves, chopped 

2 ripe Hass avocados, halved, pitted and diced 

2 tablespoons lime juice 

Smoky Tomato-Greek Yogurt Crema:

3 plum tomatoes, halved

Canola oil

Kosher salt and freshly ground black pepper 

2 tablespoons red wine vinegar 

2 teaspoons chipotles in adobo

3 cloves garlic, chopped 

1 small Spanish onion, roughly chopped 

1/4 cup fresh cilantro leaves 

1 tablespoon dried Mexican oregano 

1 cup 2-percent or nonfat Greek yogurt

Red Cabbage-Citrus Slaw:

1/4 cup lemon juice

1/4 cup orange juice 

2 tablespoons clover honey 

2 tablespoons Dijon mustard 

1/4 cup fresh basil leaves, chopped 

Salt and freshly ground black pepper 

1/2 cup canola oil 

2 cups thinly sliced Napa cabbage 

2 cups thinly sliced red cabbage 

1 large carrot, peeled and grated on the large holes of a box grater 

Fish Rub:

3 tablespoons ancho chile powder

1 teaspoon ground cinnamon 

1 teaspoon ground cumin 

1 teaspoon kosher salt 

1 teaspoon light brown sugar 

1/2 teaspoon ground black pepper 

Grilled Fish:

Four 8-ounce mahi mahi fillets

Canola oil, for brushing 

Salt and freshly ground black pepper 

6-inch flour or corn tortillas 

1/4 cup cilantro leaves, roughly chopped 

6 leaves Boston lettuce, for wrapping


  1. For the relish: Put the garlic, pine nuts, serrano and some salt in a mortar and pestle and mash to a chunky, pesto-like consistency. Add the cilantro and continue to mash; the pesto should be very coarse.
  2. Put the avocados and lime juice in a bowl and sprinkle with salt and pepper. Gently fold in the pesto until just combined, being careful not to mash the avocado too much.
  3. For the crema: Heat a grill to high. Toss the tomato halves with some canola oil and season with salt and pepper. Grill until the tomatoes are charred and softened, turning once or twice, about 5 minutes total.
  4. Combine the grilled tomatoes, vinegar and chipotles in a food processor and pulse a few times to combine. Add the garlic, onions, cilantro, oregano and some salt and pepper and pulse until slightly smooth.
  5. Put the yogurt in a medium bowl and swirl in some of the salsa, being careful not to stir it in completely.
  6. For the slaw: Put the lemon juice, orange juice, honey, mustard, basil and some salt and pepper in a blender and blend until smooth. With the motor running, drizzle in the canola oil until emulsified.
  7. Combine the Napa cabbage, red cabbage and carrot in a large bowl; add half of the dressing and toss to coat. Season with salt and pepper; add more dressing if needed, reserving a little for fish.
  8. For the rub: Combine the ancho powder, cinnamon, cumin, salt, brown sugar and black pepper in a bowl. Mix to blend.
  9. For the fish: Brush the top of the fish filets with canola oil, and sprinkle them with salt, pepper and about 3 tablespoons of the spice rub. Let stand for 5 minutes, then grill the filets, spice-side down, over direct heat until the fish is lightly charred and comes away from the grill easily, about 2 minutes. Flip and cook another 2 minutes to sear on the reverse side. Move the fish over indirect heat, cover the grill, and cook until the fish is just cooked through, another 3 to 4 minutes; the fish should be just firm when squeezed lightly on the sides. Remove the fish to a platter and let rest for a few minutes.
  10. While the fish rests, grill the tortillas over direct heat until slightly charred and just warm, about 5 seconds per side. With a fork, flake the fish into large chunks. Drizzle with the remaining slaw dressing and top with cilantro leaves.
  11. Serve the fish family-style with the tortillas and butter lettuce (for wrapping), and the avocado relish, tomato crema, and cabbage slaw in bowls on the side.

Cook’s Note

Store extra rub in an airtight container in a cool, dark place for up to 6 months.

Grilled Fish Tacos with Chipotle Crema
20m Easy 99%
Baja Fish Tacos
Rick Martinez

Baja Fish Tacos

17m Easy 98%
Baja Style Fish Tacos
Gabriela Cámara

Baja Style Fish Tacos

6m Intermediate 97%
Crunchy Taco Wrap
Jordan Andino

Crunchy Taco Wrap

33m Easy 99%