Cut off the tips of the asparagus spears and chop the stalk into 1/2" pieces. Keep the tips to use in another recipe or to dress up the bowl when serving.
Add the butter to a large stock pot over medium heat.
Remove the peel from the garlic cloves and smash with a heavy knife. Add the smashed garlic to the pot along with the chopped onions. Cook for about 7-8 minutes, until onions are soft.
Add the chopped asparagus, chicken broth, chili powder, ground thyme, bacon slices, salt and black pepper to the pot and bring to a rapid boil. Cover the pot, turn the heat down to low and simmer for about 30 minutes until all the vegetables are soft and tender.
Use an immersion blender or blender to puree until completely smooth.
OPTIONAL- pass the pureed soup through a fine sieve to remove the fibers if you prefer.
Transfer the soup back to the stockpot and bring back to a simmer.
Add the lemon juice and grated Parmesan cheese and stir to combine.
Taste the soup and add additional salt, pepper, cheese or lemon juice if desired!
Divide the soup into 4 bowls and top with the asparagus tips or grated Parmesan cheese if desired.