All the fish in this impressive, yet surprisingly easy, soup are available at markets like Whole Foods. Don't forget the crusty bread for dipping!
Heat oil in a large Dutch oven over medium-high. Add onion and fennel, and cook, stirring often, until translucent, about 5 minutes. Add garlic and salt, and cook, stirring often for 3 minutes. Stir in tomato paste and crushed red pepper. Stir in tomatoes, seafood stock, and wine, and bring mixture to a boil. Add bay leaves; cover and simmer 20 minutes.
Uncover and add halibut, clams, and mussels. Cook until shellfish open and fish begins to flake, about 5 minutes longer. Sprinkle with parsley and black pepper; squeeze fresh lemon over cioppino. Garnish with fronds, if desired. Serve with crusty bread.