Cook noodles (or pasta) according to package instructions, until al dente.
Combine lentils with 3 cups water, garlic, cumin and bay leaf in a saucepan.
Bring to a boil and simmer until lentils are tender.
Strain and discard garlic and bay leaf.
Add salt to taste and toss to combine.
To make the sauce, heat oil. Add onion and garlic. Cook until softened.
Add tomatoes, Baharat, vinegar, chile and salt. Bring to a boil. Reduce to a simmer and cook for 10 minutes until thickend. (if using fresh tomatoes, simmer for 20 minutes and add water as needed)
While the sauce is simmering, cook all the other ingredients.
In a saucepan, bring 2 cups of water to a boil. Add rice and salt. Cover and reduce to a simmer. Cook until rice has absorbed all of the liquid and is tender, about 15 minutes.
In a large bowl, combine rice, lentils, noodles and chickpeas. Toss to combine. Taste and add salt, if necessary. Cover to keep warm until ready to serve.
To make the topping, heat oil.
Add onions and fry on low heat until the onions are golden brown, about 10 minutes.
To plate koshari, add grain and lentil combination onto a plate.
Add some tomato on top.
Garnish with the onions.