First off, for the benefit of non-geeks (and those who have never played Uno before), a wildcard is a single character used to represent a set of pre-defined characters or words. A single character wildcard represents a single character, and a single word wildcard represents a single word. Google accepts both single character and single word wildcards.
The * operator
The * (asterisk) operator is the Google single word wildcard. Try this example and compare the results: world round and world * round. With the * operator, Google will attempt to keep the order of words while matching the wildcard word.
You can also use double quotes with wildcards for a semi-flexible phrase search. For example, "* white and the * *" forces Google to include the common words, match at least the same number of words, and keep the order of those words.
Use the * operator to represent 'normal' words or you will end up with unpredictable results. Avoid using it for single characters or symbols.
Do not use a wildcard for a group of missing letters within a word. It is better to rely on Google to provide alternatives for a search term that is mis-spelled or cannot be found.
Note that Google may not provide alternatives for extremely uncommon words or words that are of different language from the Google native language you set.
The . operator
Google recognizes the . (period) as a single character wildcard. It is normally used in combination with other operators or with multiple search terms.
There are three rules in the wildcard representation. (1) It is used to represent any printable or extended ASCII character when searching URLs, (2) it represents any printable or extended ASCII character except alphabets and numbers when searching titles and text, and (3) it represents any printable or extended ASCII character except alphabets and numbers when searching URLs with the inurl operator.
Confusing? To keep things simple and results predictable, use the . operator only for wildcard symbols. Based on my experience, the . operator is best used to (1) loosely couple multiple search terms together, such as for general queries: how.to.get.to.city.hall, (2) to replace hypens and spaces in serial number based queries such as CAB.12569.X, and also (3) for source code related searches.
Summary
Pareto Principle - here's the 20% takeaway that gives you the 80% effect: Use the * operator as a wildcard for a single word, and use the . operator as a wildcard for a single symbol.