Bring a large pot of salted water to a boil.
Cook pasta until al dente according to package instructions, then drain and set aside.
Heat olive oil in a skillet over medium heat.
Add chopped onion and sauté for 3 to 4 minutes until softened.
Add minced garlic and cook for 30 seconds until fragrant.
Add ground beef, breaking it up as it cooks.
Season beef with paprika, cumin, chili flakes, salt, and black pepper.
Cook until beef is browned and fully cooked, then remove from heat.
In a bowl, combine yogurt, grated garlic, and salt until smooth; let come to room temperature.
Melt butter over low heat in a small saucepan.
Stir in paprika and chili flakes; heat gently until fragrant without browning.
Place cooked pasta in serving bowls.
Spoon yogurt sauce over the pasta.
Top with spiced beef.
Drizzle generously with warm butter sauce.
Garnish with chopped parsley and extra chili flakes if desired.
Serve immediately while warm.