Soak the chickpeas and red kidney beans in water over night (about 10-15 hours), changing the water couple of times. Then drain the beans.
Heat 2 tablespoons of oil in a large pot over medium heat. Add the chopped onions and fry until softened, about 6 minutes. Add the chickpeas, red kidney beans and turmeric powder. Fry for a few minutes together. Add 10 cups warm water. Cover the pot and cook over medium heat for 50 minutes. Then add the lentils. Cover the pot and cook for 10 minutes.
Add the spinach, parsley, coriander, green onions and 6 cups warm water. Add black pepper to taste.
Cover the pot and cook over medium-low heat for about 75 minutes, stirring occasionally.
Break off the Reshteh into three sections and add to the pot. Cook covered over medium-low heat for another 30 minutes, stirring occasionally.
Dissolve 1-tablespoon flour in 1/4 cup cold water and mix until there are no lumps. Add to the soup. Then combine 1/3 cup Kashk and 1/3 cup cold water. Pour into soup and mix well. Cover the pot and cook for 35 more minutes over low heat. If soup is too thick, add a little hot water. At the end, taste and adjust seasoning by adding salt if desired.
Meanwhile, prepare the garnish: In a frying pan, heat 2 tablespoons canola oil over medium heat. Add the sliced onions and fry until golden brown and caramelized. Set aside.
In a frying pan, heat 1-tablespoon canola oil over medium heat. Add the garlic and fry until golden. Set aside.
In a frying pan, heat 1-tablespoon canola oil over medium heat. Add the dried mint and fry until fragrant, about 2-3 minutes. Set aside.
Once Ashe Reshteh is ready, transfer to a serving bowl and garnish with Kashk and fried ingredients.