Yes,a pokemon can learn as many as 4 moves, as long as the father has 4 compatable moves
The moves obtained by a Pokémon when hatching are as follows:
The Pokémon will start with any moves that it would learn as a "Start" move in its learnset (In Generation II and Generation III, they learned all moves that are level 5 and below in their learnset.).
The Pokémon will start with any moves that it would learn by leveling up only if both parents know the move. This does not apply to moves that later evolutions can learn (such as Breloom's Mach Punch, which Shroomish cannot learn for obvious reasons).
The Pokémon will start with any TM or HM moves (and starting in Crystal, move tutor moves) that the father knows and the baby can also learn by machine.
The Pokémon will start with any egg moves that the baby can learn and the father knows.
The moves will take precedence in the order listed, and if there are more than four moves to learn, the moves will start being overwritten much like when leveling up at the Pokémon Daycare.
From Pokémon Emerald and onwards, there is a specific method to produce a Pichu that knows the move Volt Tackle: When breeding a Pikachu or Raichu holding a Light Ball, the offspring Pichu will know the move Volt Tackle. It should be noted that the parent need not know the move itself, and is not required to be of any specific gender; however, a male Pikachu or Raichu has to breed either with a female counterpart or with Ditto so that the offspring is, in fact, a Pichu.