Лексикографические источники по-разному характеризуют это выражение, называя его и пословицей, и поговоркой, и фразеологизмом. В некоторых из этих источников запятая стоит, в других же ее нет. Мы полагаем, что запятая не нужна (мал да удал), хотя и ее постановка едва ли может считаться ошибкой.
Первая причина для непостановки запятой — цельность, устойчивость оборота. В разных синтаксических конструкциях (хоть конструкции с повторяющимися союзами, хоть деепричастные обороты, хоть сравнительные обороты) устойчивость сочетания — один из главных факторов, отменяющих запятую. А тут не просто цельность и устойчивость, а еще и рифма, то есть прямо-таки невероятная склеенность. Вторая причина — здесь нет противопоставления (то есть союз употреблен не в значении но), при котором один признак есть, а другой отсутствует. Утверждается наличие обоих признаков, причём они, не являясь рядоположенными, соединяются в одно целое.
Дефис не нужен. Частица таки пишется через дефис с предшествующим глаголом (вернулся-таки), наречием (довольно-таки, прямо-таки) и в словах всё-таки, так-таки. В остальных случаях верно раздельное написание.
Таки – частица, пишется через дефис с предшествующим глаголом (вернулся-таки), наречием (довольно-таки, прямо-таки) и в словах всё-таки, так-таки; в остальных случаях – раздельно (он таки приедет; Саша таки добился успеха).
Частица -таки пишется через дефис с предшествующим глаголом (вернулся-таки), наречием (довольно-таки, прямо-таки) и в словах всё-таки, так-таки; в остальных случаях – раздельно (он таки приедет). Правильно: всё-таки, но всё ж таки, т. к. дефисное написание с сочетанием слов невозможно.