Melt the butter in a large saucepan. Add the onion and cook for 5 minutes until soft.
Add the garlic and cook for 1 minute. Sprinkle in the flour and stir for 1 minute.
Gradually pour in the stock, stirring constantly to avoid lumps. Add the diced potatoes and bring to a simmer.
Cook for 12 minutes until the potatoes are tender. Add the frozen sweetcorn and cook for 3 more minutes.
Add the grated potato and milk. Stir well and cook for 3 minutes until the soup thickens. The grated potato breaks down and gives the chowder its creamy texture without needing cream.
Flake in the drained tuna and stir gently. Season with salt, pepper and dill if using. Serve in warm bowls with crusty bread.