In a skillet over medium heat, cook ground beef until browned. Drain excess grease.
Add chopped onions and garlic, cooking until softened.
Transfer the mixture to a crockpot. Stir in taco seasoning, diced tomatoes, tomato sauce, and beef broth.
Cover and cook on low for 4 hours.
Add spaghetti, breaking it into pieces, and stir into the sauce. Cover and cook for another 30 minutes until pasta is tender.
Stir in shredded cheddar cheese and sour cream.
Garnish with chopped cilantro before serving.