Week de linzen voor een paar uur in koud water. Snijd de tomaten, uien en bleekselderij in kleine blokjes. Hak de knoflook en koriander fijn.
Verhit de olijfolie in een grote soeppan op middelhoog vuur. Voeg de uien, bleekselderij en knoflook toe. Fruit deze ingrediënten tot de uien glazig zijn. Voeg het paprikapoeder, komijn, kurkuma en cayennepeper toe aan de pan. Roer goed door zodat de kruiden hun aroma vrijgeven. Snijd de tomaten in blokjes en voeg ze toe aan de pan en laat ze sudderen tot ze zacht zijn en beginnen te desintegreren.
Giet de linzen af en voeg ze toe aan de pan samen met de kippen- of groentebouillon. Breng het geheel aan de kook. Verlaag het vuur en laat de soep ongeveer 30 minuten sudderen, of totdat de linzen gaar en zacht zijn.
Breng de soep op smaak met zout en peper. Voeg vlak voor het serveren de gehakte verse koriander en eventueel wat citroensap toe. Dien de harira heet op met een partje citroen aan de zijkant. Het is gebruikelijk om de soep te serveren met vers brood.