In a large pan, sauté the onion in the olive oil for 4-5 minutes over medium heat, until onion is soft and starts to look translucent.
Add minced garlic and red pepper flakes and sauté for one minute more, being careful not to burn the garlic. Set garlic and onion aside and allow to cool.
In a large bowl, using your hands, combine the bread crumbs, parmesan, ground beef, parsley, eggs and salt and pepper. Add the garlic and onion and stir well to combine. (You’re gonna get a little messy here, but just get over it.)
Add about ¼ to ½ cup of water to the meatball mixture – you want the mixture to be moist – and mix well.
Roll the meat mixture into balls – the size is really up to you, and may depend on how you’re serving these – spaghetti and meatballs may require a larger meatball, but if you’re serving as an appetizer, think about your guests and try to go smaller. Just try to stay consistent with size so that they all cook evenly.
Add meatballs to a skillet in batches (don’t overcrowd the pan!) and brown on all sides, sautéing them on medium heat until the meatballs are cooked all the way through.
Remove meatballs from the skillet and place on tray topped with a cooling rack (put some foil underneath the rack to help catch the drippings. Let cool slightly, then serve!