This makes eight 3" long bars. You can cut each into two or three pieces to get cubes.
Cook the besan in ghee on low-medium heat until the raw flavour leaves. Keep stirring and breaking any lumps that form.
Meanwhile, bring the sugar, water, and cardamom to a boil. Once it starts boiling, let it boil on medium heat until all of the sugar dissolves. Remove the cardamom.
Once the besan is ready, pour the sugar mixture into the besan little by little and keep stirring it.
Allow it to cook on low heat and keep stirring until everything has come together into a wet, uniform mass.
Transfer to a plate and allow it to cool for a few minutes. Keep mixing the mixture.
While it's still manageably hot, form it into one compact and rectangular log that's about 1/2" high. Then cover it with a plate or cling film and refrigerate for 15-20 minutes.
Take it out and cut it into desired shape. I cut mine into 1" wide bars.
Refrigerate once more after shaping, for about 5 mins of so.
Serve at room temperature.
Refrigerating helps it hold shape a lot quicker and better without having to add lots of ghee and sugar to the recipe. While serving you can also reheat the barfi for 20 seconds or so and it'll absolutely melt into your mouth, yum!
These stay perfect in the fridge for a span of 3-4 days. Simply reheat a bit or leave at room temperature for sometime prior to serving.