Slice the challah into 1 inch cubes. Butter a 9x13 inch baking dish and arrange the cubes of bread in a single layer.
In a small bowl, whisk together the buttermilk, eggs, sugar, vanilla and cinnamon. Pour over the bread, coating it evenly. Gently press the bread down to let it all soak the custard. Cover with plastic wrap and chill in the refrigerator overnight (or a minimum of 30 minutes if not preparing the night before). In another small bowl, stir together the flour, sugar, cinnamon and salt. Using a pastry cutter, two forks or your fingers, cut in the butter until you have a crumbly mixture. Stir in the oats. Cover the streusel topping and chill in the refrigerator as well.
The following morning, preheat the oven 350° F.
Sprinkle the oat streusel over the soaked bread, pressing down gently with your hands. Bake the french toast for 45 minutes or until it is just firm.