We give an algorithm for PAC learning intersections of k halfspaces with a ρ margin to within error ε that runs in time poly(k,ε−1,ρ−1)⋅exp(O(nlog(1/ρ)logk)). Notably, this improves on prior work which had an exponential dependence on either k or ρ−1 and matches known cryptographic and Statistical Query lower bounds up to the logarithmic factors in k and ρ in the exponent. Our learning algorithm extends to the more general setting when we are only promised that most points have distance at least ρ from the boundary of the polyhedron, making it applicable to continuous distributions as well.