That's a tough question, actually. See, it depends on the betta as they all have different personalities.
I have a betta who is so peaceful that he lives with fancy guppies (they are not usually recommended because their long, pretty fins look like little betta fish). Right now he's with some baby White Clouds which are small enough for him to eat...he prefers vegetables!!
At the same time, I once knew someone with a betta that was so aggressive he attacked all other fish...plus plants o_o.
There was also a betta who was great with other fish...except cory cats. Which is weird because cory cats are bottom-dwellers that most bettas barely notice.
I would look for fish that don't resemble/aren't related to bettas. This includes fancy guppies and gouramis. Also, many people say to avoid certain tetras because they can be fin-nippers and male bettas have long, flowing fins. Remember, all of these fish can
live with bettas...it's just that they aren't the best choices.
You should look into peaceful bottom-dwelling fish. Cory cats, oto cats, or a bristlenose pleco (no other plecos) are good tankmates. Some tetras can be housed with them but like I said, some are fin-nippers. Avoid ones that are "semi-aggressive", at least. I house my bettas with neon tetras but some people have had bad luck with doing that...either the neons were nippers or the betta was aggressive and tried to eat them.
Female guppies often work since they aren't as colorful. Endler's Livebearers, Platies, Cherry Barbs, White Cloud Minnows, Rasboras, and Swordtails are some more fish that often make good tankmates.
Danios can live with bettas but I wouldn't do that. See, Danios are crazy-hyper and apparently can stress bettas out. Plus they do better in cool temperatures. They are nippy, anyways.
Some non-fish tankmates that are good in a 10-gallon are Apple Snails, Ghost Shrimp, Cherry Shrimp, and African Dwarf Frogs. Keep in mind some bettas will eat the shrimp.
Remember that you shouldn't have a ton of fish in a 10-gallon. Yes, it's larger then previous tanks you've probably had but still small by aquarium standards
. That's not a bad thing, I love small tanks, but it means you need to be careful not to over-stock and add fish slowly.
Oh, and I recommend using the fish food method or Bio-Spira to cycle the tank. Unless you use Bio-Spira remember to cycle the tank before adding any fish. This doesn't just mean letting the tank run for a while.
Just remember that some fish intros just won't work out. Always have a back-up plan...maybe return fish to the store if they don't get along with your betta. I've personally never had any problems with keeping my bettas in community tanks
. Of course, I heavily plant my tanks so there are plenty of hiding spots. If you aren't into the live plants then get lots of fake ones.