If using fresh cardoon, remove the strings and cook in boiling salted water for about 1.5 hours until tender; with jarred, pre-cooked cardoon this step is skipped, just drain it.
In a pan, sauté the finely chopped onion in a little olive oil until translucent.
Sprinkle in the flour, stir, then pour in the warm milk while stirring constantly.
Crush the almonds to a paste in a mortar, salt them and stir them into the sauce. Simmer for another 5 minutes.
Pour the sauce over the cardoon and heat together for about 10 minutes before serving.