Place a large soup pot over medium-high heat and add olive oil. Brown the ground beef, breaking the meat into small pieces with a spoon.
Once the beef has browned, add the onion, carrots, celery, garlic, salt and pepper. Cook, stirring frequently for 10 minutes.
Stir in crushed tomatoes, kidney and cannellini beans, tomato sauce, tomato paste and chicken broth. Bring the mixture to a boil and reduce heat to low. Add the oregano, basil, thyme and bay leaf. Stir to combine. Allow the soup to simmer for 1 hour, and then remove from the heat.
About 15–20 minutes before you are ready to serve, cook the pasta in plenty of boiling salted water according to the directions on the package. Drain the pasta thoroughly and stir it into the soup just prior to serving.
Ladle the soup into bowls and sprinkle with plenty of Parmesan cheese and enjoy!
Notes
If the noodles drink up too much of the liquid, or if you just prefer a thinner soup, add a bit more broth until you reach the desired consistency.