While researchers have looked at many aspects of argumentation, an area often neglected is that of argumentation strategies. That is, given multiple possible arguments that an agent can put forth, which should be selected in what circumstances. In this paper we propose a heuristic that implements one such strategy. The heuristic is built around opponent modelling, and operates by selecting the line of argument that yields maximal utility, based on the opponent's expected response, as computed by the opponent model. An opponent model may be recursive, with the opponent modelling of the agent captured by the original agent's opponent model. Computing the utility for each possible line of argument is thus done using a variant of M* search, which in itself is an enhancement of min-max search. After describing the M* algorithm we show how it may be adapted to the argumentation domain, and then study what enhancements are possible for more specific types of dialogue. Finally, we discuss how this heuristic may be extended in future work, and its relevance to argumentation theory in general.