In a large Dutch oven or heavy-bottomed pot, heat the vegetable oil over medium-high heat. Brown the beef cubes in batches, then remove from the pot and set aside.
Add the chopped onions to the pot and cook until softened, about 5-7 minutes. Add the minced garlic and cook for another minute until fragrant.
Stir in the sweet paprika, caraway seeds, and marjoram. Cook for 30 seconds, stirring constantly, until fragrant.
Return the browned beef to the pot. Pour in the beef broth and add the diced tomatoes (undrained) and chopped bell peppers. Season with salt and black pepper.
Bring the mixture to a simmer, then reduce the heat to low, cover, and cook for at least 3 hours, or until the beef is very tender, stirring occasionally.
Taste and adjust seasoning if necessary. Serve hot, garnished with a dollop of sour cream or fresh parsley, if desired.
Notes
Hungarian Goulash is best served with noodles, dumplings, or crusty bread to soak up the delicious sauce.