In a large pot, heat the olive oil over medium heat. Add the chopped onion and garlic, cooking until softened and fragrant, about 3-4 minutes.
Add the ground beef to the pot, breaking it up with a spoon, and cook until browned. Drain excess fat if necessary.
Stir in the diced carrots and celery, cooking for another 5 minutes until they begin to soften.
Add the diced potatoes, beef broth, thyme, paprika, salt, and pepper. Bring to a boil, then reduce heat to low and simmer for about 20-25 minutes or until the potatoes are tender.
In a small bowl, whisk together flour and milk until smooth. Gradually add this mixture into the soup, stirring constantly to avoid lumps.
Allow the soup to simmer for an additional 5 minutes, stirring until it thickens slightly.
Remove the pot from heat, and stir in the grated cheddar cheese until melted and creamy. Adjust seasoning as needed.
Notes
Ladle the soup into bowls and garnish with fresh parsley. Serve with crusty bread on the side for dipping!