4 tablespoons unsalted butter (1/2 stick)
2 medium red bell peppers, cored, seeded, and cut into medium dice
1 medium yellow onion, medium dice
2 medium garlic cloves, finely chopped
1 tablespoon kosher salt, plus more as needed
1 teaspoon dried oregano
1 teaspoon paprika
3/4 teaspoon freshly ground black pepper, plus more as needed
2 tablespoons tomato paste
1 pound lean ground beef
1 pound elbow macaroni
1/4 cup all-purpose flour
2 cups whole milk
1 (15-ounce) can crushed tomatoes (with juices)
1 cup low-sodium chicken broth or stock
3 cups shredded sharp cheddar cheese (about 8 ounces)
Bring a large pot of heavily salted water to a boil over high heat. Heat the oven to 400F and arrange a rack in the middle.
Meanwhile, melt the butter over medium heat in a large saucepan or Dutch oven. Add the bell peppers, onion, garlic, measured salt, oregano, paprika, and measured pepper and cook, stirring occasionally, until the vegetables are softened but not browned, about 7 to 10 minutes.
Add the tomato paste, stir to combine, and cook until the raw flavor has cooked out, about 1 minute. Add the ground beef, season with salt and pepper, and cook, breaking the meat into smaller pieces with a wooden spoon, until its just cooked through and no longer pink, about 5 minutes. Meanwhile, add the pasta to the boiling pot of water and cook until still chewy and underdone, usually 1 or 2 minutes less than the package directions suggest (the pasta will finish cooking in the oven). Drain and rinse with cold water until no longer steaming; set aside.
Add the flour to the beef mixture and cook, stirring occasionally, until the raw taste has cooked out of the flour, about 2 minutes. Add the milk, tomatoes and their juices, and broth or stock, stir to combine, and bring to a simmer.
Add the cooked pasta and 1 1/2 cups of the cheese and stir to combine. Continue cooking, stirring occasionally, until the pasta is heated through and steaming, about 1 minute. Taste and season with salt and pepper as needed.
Transfer to a 5-quart baking dish, sprinkle with the remaining 1 1/2 cups of cheese, and bake until bubbling and lightly browned on top, about 25 to 30 minutes. Transfer to a wire rack and let cool for 5 minutes before serving.