В большой кастрюле нагрейте масло до мерцания. Добавьте лук и готовьте на умеренном огне до прозрачности, 5 минут. Добавьте чеснок и готовьте до появления аромата, 1 минуту. Вмешайте муку, чтобы получилась паста. Постепенно влейте молоко до однородности. Доведите до кипения, помешивая, пока соус не загустеет. Уменьшите огонь до минимума и варите, часто помешивая, пока не исчезнет мучной привкус, 7 минут. Добавьте семена сельдерея, мускат, табаско и кайенский перец. Вмешайте сыры, пока они не расплавятся. Снимите с огня и приправьте соус солью и перцем.
Смазать маслом большую неглубокую форму для выпечки. В большой кастрюле с кипящей подсоленной водой отварите макароны почти до состояния al dente, около 4 минут. Слейте макароны и верните их в кастрюлю. Вмешайте сырный соус, пока он полностью не перемешается. Переложите смесь в подготовленную посуду и дайте постоять 20 минут.
Тем временем разогрейте духовку до 425 градусов по Фаренгейту. Выпекайте макароны в верхней трети духовки в течение 25 минут, пока они не начнут пузыриться и не начнут подрумяниваться. Включите жаровню и жарьте макароны около 1 минуты, пока они не подрумянятся и не станут хрустящими сверху. Перед подачей дайте макаронам с сыром отдохнуть 10 минут.