Heat olive oil in a large pot over medium heat. Add chopped onion and cook until translucent, about 5 minutes.
Add minced garlic and chopped celery, and cook for another 2 minutes.
Add diced potatoes, fish stock, diced tomatoes, salt, black pepper, thyme, and paprika. Bring to a boil, then reduce heat and simmer until potatoes are tender, about 15 minutes.
Add fish fillets to the pot and cook until the fish is opaque and flakes easily, about 5-7 minutes.
Stir in lemon juice and chopped parsley. Adjust seasonings to taste.
Serve hot, garnished with additional parsley if desired.
Notes
This soup can be served with crusty bread for a complete meal.