In a large pot over medium heat, cook the ground beef until browned. Drain excess grease.
Add diced onions and minced garlic to the pot, cooking until soft and fragrant.
Stir in the diced potatoes, chicken broth, and milk. Bring to a simmer and cook for 15-20 minutes until potatoes are tender.
In a separate pan, melt butter and whisk in flour to create a roux. Cook for 1-2 minutes, then slowly stir in the heavy cream.
Gradually add the roux to the soup, stirring constantly to thicken.
Stir in shredded cheddar cheese, salt, pepper, paprika, and dried parsley. Mix until the cheese is fully melted.
Serve hot, garnished with crumbled bacon and chopped green onions.