Chop the onion into small, even pieces. Mince the garlic finely. Cut broccoli into bite-sized florets of roughly the same size. Grate the cheddar cheese from a block and let it sit at room temperature.
Put a pot over medium heat and add the butter. Let it melt completely until the foaming stops.
Add the chopped onion and stir for about 1 minute until translucent and soft.
Add the minced garlic and stir constantly for 30 seconds. Do not let it burn.
Pour in the chicken broth and heavy cream. Stir gently to combine.
Add the broccoli florets, smoked paprika, black pepper, and salt. Stir to distribute the spices evenly.
Increase heat to bring the mixture to a boil. Once boiling, immediately reduce heat to low.
Cover the pot halfway and let simmer for 20 minutes until broccoli is tender when pierced with a fork.
Turn off the heat completely and let the soup sit for 1 minute to cool slightly.
Add the cheddar cheese in small handfuls (about 1/2 cup at a time), stirring completely after each addition until all cheese is melted and incorporated. Do not dump all cheese at once.
Taste and adjust seasoning if needed. Add more salt, pepper, or a splash of broth to adjust consistency.
Ladle into bowls while hot. Top with extra shredded cheddar and fresh parsley if desired. Serve immediately.