Make the kreplach dough: In a bowl, mix flour and salt. Make a well, add eggs and water, and knead into a smooth dough. Cover and rest for 30 minutes.
Prepare the filling: In a skillet, heat oil over medium heat. Sauté onion and garlic until soft. Add ground meat, salt, and pepper; cook until browned. Let cool.
Roll out the dough on a floured surface to 1/8-inch thickness. Cut into 2-inch squares.
Place a teaspoon of filling in the center of each square. Fold over to form a triangle, pressing edges to seal. Bring the two bottom corners together and pinch to form a tortellini shape.
Bring a large pot of salted water to a boil. Drop in kreplach and cook for 8-10 minutes until they float. Drain.
In a separate pot, bring chicken broth to a simmer. Add carrots and celery; cook until tender, about 10 minutes.
Add cooked kreplach to the soup. Serve hot, garnished with fresh dill.
Tips
Kreplach can be frozen before cooking; boil directly from frozen, adding 2-3 minutes to cooking time.
For a richer flavor, use homemade chicken broth.
Leftover soup can be refrigerated for up to 3 days; reheat gently.