Set a large pot over medium heat. Add the oil to warm. Then, add the beef, onions, and carrots, and cook until the beef has browned, about 8-10 minutes, breaking up the meat as it cooks. Drain any excess fat from the pot.
Stir in the tomato sauce, garlic powder, and salt.
Add the beef broth and turn the heat to high. When it boils, reduce to medium so the liquid simmers with steady but calm bubbles (so just not vigorously).
Add the pasta to the pot and stir gently.
Cook until the pasta is just tender and most of the liquid is absorbed, or for about 14-16 minutes. It's OK if there's some liquid remaining, as it will be absorbed as the pasta sits.
Remove the pot from the heat and stir in the cheese to melt.
Serve with optional toppings as desired.
Notes
Store leftovers in an airtight container for up to 5 days. To reheat, sprinkle with water and cover with a plate or wax paper and warm for 30-60 seconds, stirring halfway through.
Use lean ground beef if desired, or drain off any excess fat once the meat is done cooking.
Add 1 cup finely diced mushrooms to the pan with the onion and beef to easily add another veggie.
Add an additional 8 ounces tomato sauce at the end of cooking for a more robust tomato flavor.