What's the similarities and differences beetween this 3 methods: bagging, boosting, stacking?
Which is the best one? And why?
Can you give me an example for each?
These are different approaches to improve the performance of your model (so-called meta-algorithms):
As you see, these all are different approaches to combine several models into a better one, and there is no single winner here: everything depends upon your domain and what you're going to do. You can still treat stacking as a sort of more advances boosting, however, the difficulty of finding a good approach for your meta-level makes it difficult to apply this approach in practice.
Short examples of each: