Heat the oil in a large saucepan over a medium heat. Add the onion and garlic and gently fry, without browning, for 2-3 minutes. Add the carrots, celery and courgettes, and cook for further 4-5 minutes.
Stir in the tomatoes. Fill the tomato can with water twice and mix into the vegetables along with the chopped basil. Season with freshly ground black pepper and then simmer gently for 30 minutes.
Add the cannellini beans and the cabbage, and simmer gently for a further 30 minutes.
Sprinkle with grated Parmesan just before serving.
See more soup recipes