Heat olive oil in a large cast-iron skillet over medium-high heat until shimmering.
Place brussels sprouts in the skillet cut-side down in a single layer and sear for 6 minutes without stirring until deeply caramelized.
Remove sprouts from the skillet and set aside on a plate.
Add ground beef and diced onion to the skillet; cook for 8 minutes, breaking the meat into small crumbles, until browned and onion is translucent.
Drain excess rendered fat from the skillet.
Add minced garlic, salt, black pepper, smoked paprika, and red pepper flakes to the beef; sauté for 60 seconds until fragrant.
Reintroduce the seared brussels sprouts to the skillet and toss for 2 minutes to incorporate flavors and reach serving temperature.
Adjust seasoning to taste and serve immediately.