Cook the onions: Heat the lard or oil in a Dutch oven over medium heat. Add the onions and cook for 8–10 minutes, until very soft and lightly golden.
Brown the beef: Add the beef and cook for 5–7 minutes, stirring occasionally, until lightly browned.
Add the paprika: Add the garlic and caraway and cook for 30 seconds. Remove the pot from the heat, then stir in the sweet Hungarian paprika, hot paprika, salt, and pepper. Once the beef is evenly coated, return the pot to low heat. This prevents the paprika from burning and developing a bitter flavor.
Simmer: Add the tomato, bell pepper, beef broth, and bay leaf. Bring to a simmer, then reduce the heat to low. Partially cover and cook for 1½–2 hours, stirring occasionally, until the beef is very tender.
Thicken the sauce: Remove the lid for the final 20–30 minutes and simmer until the sauce has reduced and thickened. Add a splash of broth if needed.
Remove the bay leaf, adjust the seasoning, and serve over creamy mashed potatoes. Garnish with fresh parsley.