MDL is definitely the one that's better documented (I haven't found any good documentation on Angular2 Material). I think that because of this, MDL is (currently) the better choice. The negative of MDL is that it isn't integrated in typescript/angular2.
If you're going to be using MDL components in your Angular 2 component templates, you can extend your component from something like this, to have the MDL components registered: (otherwise MDLs animations will not work, as they depend on the javascript)
declare var componentHandler: any;
export class MaterialTemplate {
ngAfterViewInit(){
componentHandler.upgradeAllRegistered();
}
}
Usage would be something like this:
@Component({
selector: 'my-selector',
template: `
<form action="#">
<div class="mdl-textfield mdl-js-textfield">
<input value="{{bleh}}" class="mdl-textfield__input" type="text" id="sample1">
<label class="mdl-textfield__label" for="sample1">Text...</label>
</div>
<button (click)="action()" class="mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--accent">
create
</button>
</form>`
})
export class CreateComponent extends MaterialTemplate {...}
Once Angular2 Material is out of alpha and has some documentation, I'd switch to that though.