Mining maximal frequent subtrees remains at a preliminary state compared to the fruitful achievements in mining frequent subtrees. Thus, most of them are fundamentally complicated and this causes computational problems. In this paper, we present a conceptually simple, yet effective approach based on lists structures. The beneficial effect of the proposed approach is that it not only gets rid of the process for infrequent tree pruning, but also eliminates totally the problem of candidate subtrees generation. As far as we know, this is the first algorithm that discovers maximal frequent subtrees without any subtree generation.