  A subgraph of an edge-coloured graph is called rainbow if all its edges have
distinct colours. The study of rainbow subgraphs goes back to the work of Euler
on Latin squares and has been the focus of extensive research ever since. Many
conjectures in this area roughly say that 'every edge coloured graph of a
certain type contains a rainbow matching using every colour'. In this paper we
introduce a versatile 'sampling trick', which allows us to obtain short proofs
of old results as well as to solve asymptotically some well known conjectures.
  - We give a simple proof of Pokrovskiy's asymptotic version of the
Aharoni-Berger conjecture with greatly improved error term.
  - We give the first asymptotic proof of the 'non-bipartite' Aharoni-Berger
conjecture, solving two conjectures of Aharoni, Berger, Chudnovsky and Zerbib.
  - We give a very short asymptotic proof of Grinblat's conjecture (first
obtained by Clemens, Ehrenm\"uller, and Pokrovskiy). Furthermore, we obtain a
new asymptotically tight bound for Grinblat's problem as a function of edge
multiplicity of the corresponding multigraph.
  - We give the first asymptotic proof of a 30 year old conjecture of Alspach.
