In a large dutch oven, add olive oil over medium heat. Add onions, garlic, and dried thyme and cook for a few minutes until veggies soften.
Add fresh washed broccoli florets, water, stock, milk, and tomato sauce (opt.) NOTE: If you want to leave out the tomato, add an extra cup of stock or water.
Stir these ingredients together and add macaroni. Stir together again and add 3 cups of cheddar cheese. Stir together yet again to prevent sticking and bring the mixture to a simmer.
Once simmering, turn heat down to low, cover the pot and cook for 8 minutes.
Remove lid and stir macaroni. It should still be pretty liquid at this point and the macaroni is probably not completely cooked.
NOTE: If the macaroni seems dry, add another 1/2 cup of water. Depending on the exact macaroni you use, it might take slightly more water to cook through.
Stir macaroni again to try to prevent sticking (some might happen).
Return lid on pot and cook for another 8 minutes. Then remove lid, stir again, and test macaroni. If it isn’t cooked, continue to cook for 1-2 minute increments.
Assuming the macaroni is done, season with salt and pepper to taste and add the rest of the cheese to top of macaroni. Return lid and remove from heat. Let macaroni steam for 5 minutes to melt top cheese.