The ideal answer is: let the baby decide. Your baby will come
off the breast once she or he had enough. Offer the second breast,
and let the baby stay as long as she or he wants on that breast
too.
If your baby falls asleep while nursing, slip a finger into
her or his mouth to break the suction (see also sleepy
baby).
If you're in a hurry, it might help to know that a baby who is
nursing vigorously can take most of the milk in a breast in less
than ten minutes. You can offer each breast for about that long.
Don't do this regularly though, as your milk continue producing
milk as your baby nurses. Furthermore, the initial milk in your
milk sinuses is watery (low in fat), and is most effective for
quenching thirst. The later milk that you eject from the
milk-producing glands and continue producing while nursing is much
richer (fattier), and is important for proper nutrition (see
milk production).
If people tell you to limit feedings to a particular length of
time (one minute, or five, or ten...), don't. If
you do, you'll be depriving your baby of the valuable, rich
hindmilk.
If your baby is a lazy nurser, and seems to be taking forever
to finish feeding, see sleepy baby