Here's a list of various techniques I use when it comes to naming characters:
The lazy approach
Pick the first good name that comes into your head. Simple. I do this for a lot of minor or one-shot characters, where it's not worth going into much detail trying to think of a better name (something @heather already touched upon).
I wouldn't recommend using this approach for important characters, or for characters from foreign countries; unless you have a decent knowledge of names from that country, you'll likely end up with something like "Luigi Ferrari", which sounds stereotyped and silly.
The "write who you know" approach
Use the first name or surname of someone you know. Maybe you went to school with them, or you work with them, or you've met them online somewhere. I've used my late grandmother's maiden name for a couple of my characters. I wouldn't recommend using their full name, for privacy reasons.
The dictionary approach
This is the approach I usually use for naming foreign characters. Googling "[country] [gender] first names" and "[country] surnames" will return dozens of websites full of relevant names, and you can pick whichever names you like best. Remember that names work differently in certain cultures: for example, Slavic surnames are often patronymic (the son of someone named "Ivan" will be "Ivanov" or "Ivanovic"), and also often gendered (a female would be "Ivanova" instead of "Ivanov").
The "meaningful" approach
Similar to the dictionary approach, except you look for a name with a meaning specific to the character you're writing. If your character is a pure, innocent ingenue, look for a name that means "purity" or "innocence". If your character is a tough fighter, look for a name that means "warrior". If your character is posh, look for surnames of rich or noble families, and give them a couple of posh-sounding middle names.
You can also use Biblical or historical names with certain connotations, such as "Nero" for a man with fire powers (after the emperor who supposedly 'fiddled while Rome burned'), or "David" for a plucky man who battles the odds. Try not to be too egregious about it though: if I come across a character called Lazarus, and he dies and comes back to life, that's enough to affect my suspension of disbelief, especially if nobody in-story comments on the sheer unlikeliness of that happening.
Alternately, think of a name that might be meaningful to the characters' parents. One of my characters is named Sapphire, after her mother's favourite gemstone.
The "themed" approach
I don't personally use this often, but for some stories, you could think about giving characters names based on a common theme. RWBY uses colours, and the names of mythical or fairy-tale characters; James Bond and its numerous homages/parodies tend to give female characters innuendo-laden names; Steven Universe uses gemstones; Finding Nemo uses nautical names (Nemo, Marlin, Gill); and so on and so forth. Some of the more common themes (such as colours and vehicles) have their own TV Tropes pages, which I'll link later.
The RNG approach
Finally, for the names of fantasy characters, there are all kinds of random name generators available for free on the Internet. A few people have linked some already but you can find plenty of others by just searching "fantasy name generator". Try a few, keep rolling until you get a name you like, and then maybe tweak it a little yourself until it's perfect for your character and world.